Compare commits
No commits in common. "62b703f2da332370ae5bf12a2cbbf4ec5eec0b01" and "0c1ee87356afbd5a00c4138257f7e558cad05d3e" have entirely different histories.
62b703f2da
...
0c1ee87356
2
LICENSE
2
LICENSE
@ -1,4 +1,4 @@
|
||||
Copyright 2014-2022 Alex Yatskov
|
||||
Copyright 2014-2019 Alex Yatskov
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
|
68
README.md
68
README.md
@ -1,35 +1,61 @@
|
||||
# Restaurant Search
|
||||
# Restaurant Search #
|
||||
|
||||
This project is a prototype semantic search web application that I developed as part of my master's thesis at [Keio
|
||||
University](http://www.sfc.keio.ac.jp/). I presented the results of my research at [iiWAS
|
||||
2015](http://www.iiwas.org/conferences/iiwas2015/home) in Brussels, Belgium. My article, titled [Restaurant Search with
|
||||
Predictive Multispace Queries](dl/article.pdf) was published in the in the [ACM International Conference Proceeding
|
||||
Series](https://dl.acm.org/citation.cfm?id=2837185&picked=prox&cfid=817523401&cftoken=92411506). The video below
|
||||
demonstrates the web application in action:
|
||||
|
||||
<video controls>
|
||||
<source src="dl/search.mp4" type="video/mp4">
|
||||
</video>
|
||||
Predictive Multispace Queries](https://foosoft.net/projects/restaurant-search/dl/article.pdf) was published in the in the [ACM International Conference Proceeding
|
||||
Series](https://dl.acm.org/citation.cfm?id=2837185&picked=prox&cfid=817523401&cftoken=92411506).
|
||||
|
||||
You can get a better understanding of the goals of this experimental search system by referring to the [overview
|
||||
presentation](dl/slides.zip); it provides a brief overview of the points covered in my article. Although I no longer
|
||||
make the prototype accessible on the web, it is easy to get it up and running locally by following the instructions
|
||||
below.
|
||||
presentation](https://foosoft.net/projects/restaurant-search/slides.zip); it provides a brief overview of the points covered in my article. Although I no longer make
|
||||
the prototype accessible on the web, it is easy to get it up and running locally by following the instructions below.
|
||||
|
||||
## Installation
|
||||
<iframe width="800" height="500" src="https://www.youtube.com/embed/Ic7Sq-oQ2DI" allowfullscreen></iframe>
|
||||
|
||||
## Dependencies ##
|
||||
|
||||
* [Bower](https://bower.io/)
|
||||
* [Go](https://golang.org/)
|
||||
* [Node.js](https://nodejs.org/)
|
||||
|
||||
## Installation ##
|
||||
|
||||
1. Install the search application:
|
||||
|
||||
1. Install the dependencies: [Bower](https://bower.io/), [Go](https://golang.org/), and [Node.js](https://nodejs.org/).
|
||||
2. Install the search application:
|
||||
```
|
||||
go install foosoft.net/projects/restaurant-search@latest
|
||||
$ go get github.com/FooSoft/restaurant-search
|
||||
```
|
||||
3. Install the client libraries (from the `search/static` directory):
|
||||
|
||||
2. Install the client libraries (from the `search/static` directory):
|
||||
|
||||
```
|
||||
bower install
|
||||
$ bower install
|
||||
```
|
||||
4. Build and start the server (from the `search/cmd` directory):
|
||||
|
||||
3. Build and start the server (from the `search/cmd` directory):
|
||||
|
||||
```
|
||||
go build
|
||||
./cmd
|
||||
$ go build
|
||||
$ ./cmd
|
||||
```
|
||||
5. Access the web application at `localhost:8080`.
|
||||
|
||||
4. Access the web application at `localhost:8080`.
|
||||
|
||||
## License ##
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
BIN
dl/article.pdf
BIN
dl/article.pdf
Binary file not shown.
BIN
dl/search.mp4
BIN
dl/search.mp4
Binary file not shown.
BIN
dl/slides.zip
BIN
dl/slides.zip
Binary file not shown.
27
go.mod
27
go.mod
@ -1,27 +0,0 @@
|
||||
module foosoft.net/projects/restaurant-search
|
||||
|
||||
go 1.18
|
||||
|
||||
require (
|
||||
github.com/FooSoft/search v0.0.0-20211216020216-022dc6c008c0
|
||||
github.com/GaryBoone/GoStats v0.0.0-20130122001700-1993eafbef57
|
||||
github.com/PuerkitoBio/goquery v1.8.0
|
||||
github.com/fatih/color v1.13.0
|
||||
github.com/kellydunn/golang-geo v0.7.0
|
||||
github.com/mattn/go-sqlite3 v1.14.14
|
||||
github.com/naoina/toml v0.1.1
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/andybalholm/cascadia v1.3.1 // indirect
|
||||
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 // indirect
|
||||
github.com/kylelemons/go-gypsy v1.0.0 // indirect
|
||||
github.com/kylelemons/godebug v1.1.0 // indirect
|
||||
github.com/lib/pq v1.10.6 // indirect
|
||||
github.com/mattn/go-colorable v0.1.9 // indirect
|
||||
github.com/mattn/go-isatty v0.0.14 // indirect
|
||||
github.com/naoina/go-stringutil v0.1.0 // indirect
|
||||
github.com/ziutek/mymysql v1.5.4 // indirect
|
||||
golang.org/x/net v0.0.0-20210916014120-12bc252f5db8 // indirect
|
||||
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c // indirect
|
||||
)
|
44
go.sum
44
go.sum
@ -1,44 +0,0 @@
|
||||
github.com/FooSoft/search v0.0.0-20211216020216-022dc6c008c0 h1:192aNzkh8F6h3/E2QiKigf4E213rlPOHJ3JOXdFbTIE=
|
||||
github.com/FooSoft/search v0.0.0-20211216020216-022dc6c008c0/go.mod h1:dEwlBrr5LpBdlbXQxK7S7UYZMwwpXlKjK0rdoI7Od00=
|
||||
github.com/GaryBoone/GoStats v0.0.0-20130122001700-1993eafbef57 h1:EUQH/F+mzJBs53c75r7R5zdM/kz7BHXoWBFsVXzadVw=
|
||||
github.com/GaryBoone/GoStats v0.0.0-20130122001700-1993eafbef57/go.mod h1:5zDl2HgTb/k5i9op9y6IUSiuVkZFpUrWGQbZc9tNR40=
|
||||
github.com/PuerkitoBio/goquery v1.8.0 h1:PJTF7AmFCFKk1N6V6jmKfrNH9tV5pNE6lZMkG0gta/U=
|
||||
github.com/PuerkitoBio/goquery v1.8.0/go.mod h1:ypIiRMtY7COPGk+I/YbZLbxsxn9g5ejnI2HSMtkjZvI=
|
||||
github.com/andybalholm/cascadia v1.3.1 h1:nhxRkql1kdYCc8Snf7D5/D3spOX+dBgjA6u8x004T2c=
|
||||
github.com/andybalholm/cascadia v1.3.1/go.mod h1:R4bJ1UQfqADjvDa4P6HZHLh/3OxWWEqc0Sk8XGwHqvA=
|
||||
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 h1:Yzb9+7DPaBjB8zlTR87/ElzFsnQfuHnVUVqpZZIcV5Y=
|
||||
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5/go.mod h1:a2zkGnVExMxdzMo3M0Hi/3sEU+cWnZpSni0O6/Yb/P0=
|
||||
github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w=
|
||||
github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
|
||||
github.com/kellydunn/golang-geo v0.7.0 h1:A5j0/BvNgGwY6Yb6inXQxzYwlPHc6WVZR+MrarZYNNg=
|
||||
github.com/kellydunn/golang-geo v0.7.0/go.mod h1:YYlQPJ+DPEzrHx8kT3oPHC/NjyvCCXE+IuKGKdrjrcU=
|
||||
github.com/kylelemons/go-gypsy v1.0.0 h1:7/wQ7A3UL1bnqRMnZ6T8cwCOArfZCxFmb1iTxaOOo1s=
|
||||
github.com/kylelemons/go-gypsy v1.0.0/go.mod h1:chkXM0zjdpXOiqkCW1XcCHDfjfk14PH2KKkQWxfJUcU=
|
||||
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
|
||||
github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
|
||||
github.com/lib/pq v1.10.6 h1:jbk+ZieJ0D7EVGJYpL9QTz7/YW6UHbmdnZWYyK5cdBs=
|
||||
github.com/lib/pq v1.10.6/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=
|
||||
github.com/mattn/go-colorable v0.1.9 h1:sqDoxXbdeALODt0DAeJCVp38ps9ZogZEAXjus69YV3U=
|
||||
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
|
||||
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
||||
github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y=
|
||||
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
|
||||
github.com/mattn/go-sqlite3 v1.14.14 h1:qZgc/Rwetq+MtyE18WhzjokPD93dNqLGNT3QJuLvBGw=
|
||||
github.com/mattn/go-sqlite3 v1.14.14/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
|
||||
github.com/naoina/go-stringutil v0.1.0 h1:rCUeRUHjBjGTSHl0VC00jUPLz8/F9dDzYI70Hzifhks=
|
||||
github.com/naoina/go-stringutil v0.1.0/go.mod h1:XJ2SJL9jCtBh+P9q5btrd/Ylo8XwT/h1USek5+NqSA0=
|
||||
github.com/naoina/toml v0.1.1 h1:PT/lllxVVN0gzzSqSlHEmP8MJB4MY2U7STGxiouV4X8=
|
||||
github.com/naoina/toml v0.1.1/go.mod h1:NBIhNtsFMo3G2szEBne+bO4gS192HuIYRqfvOWb4i1E=
|
||||
github.com/ziutek/mymysql v1.5.4 h1:GB0qdRGsTwQSBVYuVShFBKaXSnSnYYC2d9knnE1LHFs=
|
||||
github.com/ziutek/mymysql v1.5.4/go.mod h1:LMSpPZ6DbqWFxNCHW77HeMg9I646SAhApZ/wKdgO/C0=
|
||||
golang.org/x/net v0.0.0-20210916014120-12bc252f5db8 h1:/6y1LfuqNuQdHAm0jjtPtgRcxIxjVZgm5OTu8/QhZvk=
|
||||
golang.org/x/net v0.0.0-20210916014120-12bc252f5db8/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c h1:F1jZWGFhYfh0Ci55sIpILtKKK8p3i2/krTr0H1rg74I=
|
||||
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
Loading…
Reference in New Issue
Block a user