amirgamil / apollo Goto Github PK
View Code? Open in Web Editor NEWA Unix-style personal search engine and web crawler for your digital footprint.
Home Page: https://apollo.amirbolous.com/
License: MIT License
A Unix-style personal search engine and web crawler for your digital footprint.
Home Page: https://apollo.amirbolous.com/
License: MIT License
Hey there!
I'd like to report a security issue but cannot find contact instructions on your repository.
If not a hassle, might you kindly add a SECURITY.md
file with an email, or another contact method? GitHub recommends this best practice to ensure security issues are responsibly disclosed, and it would serve as a simple instruction for security researchers in the future.
Thank you for your consideration, and I look forward to hearing from you!
(cc @huntr-helper)
When I run the server as described in the readme, I get the following errors:
$ go run cmd/apollo.go
# github.com/amirgamil/apollo/pkg/apollo/sources
pkg/apollo/sources/kindle.go:50:2: undefined: ensureFileExists
pkg/apollo/sources/kindle.go:66:3: undefined: deleteFiles
pkg/apollo/sources/kindle.go:121:11: undefined: getFilesInFolder
I don't know go but followed the instructions and replaced the content of the GetData function with return []schema.Data{} after deleting all other content. the function has just that one line and when I run I get:
cant use []schema.Data{} (type []schema.Data) as type map[string]schema.Data in return argument
Clearly i shouldn't have deleted everything, but not sure what to do no knowing go.
First of all, amazing project! Really clever way of sifting through search results like that.
I was wondering if you thought about cmdline client for apollo?
I spend quite a lot of time in my terminal and have to context switch to browser if i need something.
Tmuxing into apollo would be really useful in my case, especially for code documentation or papers I've read.
Might be material for another feature request / idea but having a Chrome / Firefox extension to quickly pull webpages into personal store for apollo as you read them would be very cool. I often read something, leave it in the 200 Chrome tabs I have open and need to find it 2 days later and find myself digging through my history. So far I've tried things like Workona to categorise tabs into projects, but its tedious and I can see Apollo being much less attention hungry than that.
You use youtube-dl to get subtitles for videos. For local files and things like PDF's and other form's that might get downloaded, pandoc will convert just about anything to txt. Perhaps if you check in the crawler for file:// and then use pandoc to get the file as text which you can index a lot more options open up. I suspect a lot of people have local files/content they want to add to apollo and this would give huge flexibility.
Following the instructions, I got to the point where all of the folders were created, the command was ready to run, etc... and this is what returned.
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x2 addr=0x8 pc=0x10005ade0]
goroutine 1 [running]:
reflect.mapiternext(0x10041eb60?)
/opt/homebrew/Cellar/go/1.18/libexec/src/runtime/map.go:1378 +0x20
github.com/modern-go/reflect2.(*UnsafeMapIterator).UnsafeNext(0x0?)
/Users/kenneth/go/pkg/mod/github.com/modern-go/[email protected]/unsafe_map.go:136 +0x3c
github.com/json-iterator/go.(*mapEncoder).Encode(0x140002692f0, 0x1400012e968, 0x14000130780)
/Users/kenneth/go/pkg/mod/github.com/json-iterator/[email protected]/reflect_map.go:262 +0x3bc
github.com/json-iterator/go.(*onePtrEncoder).Encode(0x1400026b270, 0x14000269110, 0x14000278e80?)
/Users/kenneth/go/pkg/mod/github.com/json-iterator/[email protected]/reflect.go:219 +0x8c
github.com/json-iterator/go.(*Stream).WriteVal(0x14000130780, {0x10041fb80, 0x14000269110})
/Users/kenneth/go/pkg/mod/github.com/json-iterator/[email protected]/reflect.go:98 +0x174
github.com/json-iterator/go.(*Encoder).Encode(0x1400012e918, {0x10041fb80?, 0x14000269110?})
/Users/kenneth/go/pkg/mod/github.com/json-iterator/[email protected]/adapter.go:127 +0x34
github.com/amirgamil/apollo/pkg/apollo/backend.writeIndexToDisk()
/Users/kenneth/git/apollo/pkg/apollo/backend/api.go:117 +0xec
github.com/amirgamil/apollo/pkg/apollo/backend.RefreshInvertedIndex()
/Users/kenneth/git/apollo/pkg/apollo/backend/api.go:153 +0x1dc
main.main()
/Users/kenneth/git/apollo/cmd/apollo.go:16 +0x24
exit status 2
Running on Golang version 1.18 built for ARM64. Thoughts?
Since this repo contains no LICENSE file and no license or copyright notice in any file, we must assume that it is copyright (c) 2021 Amir Bolous, All Rights Reserved. I would not recommend that anyone download, install, distribute, or contribute here until the licensing is resolved.
This issue appears to affect all other repos owned by Bolous that I have checked.
Hi, there. I'm very excited to try your project. As you wrote in the instructions, I replaced the body of the get data function to this:
func GetData(sourcesMap map[string]schema.Record) map[string]schema.Data {
return make(map[string]schema.Data)
return data
}
And I created a new folder called 'data' inside apollo\pkg\apollo. However, when I try to launch, I get this error:
pkg\apollo\sources\source.go:14:9: undefined: data
Can you please help get it to work? Thanks!
cAn you support taking input from an RSS/Atom feed? Lots of sites have feeds and some have data you want to remember. Plus, with rss-bridge, you can get an rss feed from lots of sites and apps that don't have easy api access and in a uniform way. For example, I listen to NPR Fresh Air. The page has an rss feed so I can add that to apollo and automatically have an index of the podcasts, at least from the summary/desciption provided.
I got the following error when running the server:
$ go run cmd/apollo.go
2021/07/29 16:14:58 Error, could not create database for path: ./data/sources.json with: open ./data/sources.json: no such file or directory
exit status 1
This is my file structure:
.
├── LICENSE
├── README.md
├── cmd
│ └── apollo.go
├── docs
│ ├── Screen\ Shot\ 2021-07-25\ at\ 4.36.15\ PM.png
│ ├── apollo.png
│ └── architecture.png
├── go.mod
├── go.sum
├── pkg
│ └── apollo
│ ├── backend
│ │ ├── api.go
│ │ ├── searcher.go
│ │ └── tokenizer.go
│ ├── data
│ ├── schema
│ │ ├── crawler.go
│ │ └── schema.go
│ ├── server.go
│ └── sources
│ ├── athena.go
│ ├── kindle.go
│ ├── source.go
│ ├── utils.go
│ └── zeus.go
├── static
│ ├── css
│ │ └── stylesheet.css
│ ├── img
│ │ ├── about.png
│ │ ├── add.png
│ │ └── home.png
│ ├── index.html
│ └── js
│ ├── main.js
│ └── poseidon.min.js
└── tests
└── main_test.go
13 directories, 27 files
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.