ptt-search
ptt-search copied to clipboard
This is a web based search engine for the boards of the biggest BBS site, PTT, in Taiwan and is build in react
PTT Search
This is a web based search engine for PTT boards of the biggest BBS site, PTT, in Taiwan and is build in react. The website is deployed here.
Note: This Repository and App is intended for good use. The ultimate goal of this application is to make all information on PTT transparent to others and to bring benefits for people. This does not include exploiting information on PTT for personal gains. e.g. I did not put the Stock Board into the web application for a reason, people should not try to make money out of this app.
Installation
First clone the repository.
git clone https://github.com/billcccheng/ptt-search.git
Then npm install to install all the required packages. After you have
all the packages installed, you can npm run start to play around with you app on port 8080.
npm install
npm run start
If you want to change your port to 8000, just go to package.json and change "start":... to
"start": "PORT=8000 webpack-dev-server --hot --open --host 0.0.0.0"
The Backend Server
- All the logic and searching of the app is loaded on a heroku server. All the source code of the heroku server can be found here
Change Logs
12.05.2016
- Case Insensitive
- Boolean Search
- Can track all documents in study abroad as of 05/09/2017
- Updates will be done every 6 months
- Will search for 標題 and 內文 simultaneously
5.08.2017
- Major revision: Changed whole code base to react
- Add/Delete Query
5.10.2017
- Group results by year
5.13.2017
- Stand up a server to process all the searching to minimize memory usage
5.18.2017
- Made better UX for mobile
Future Update
- Will add different boards
- Will have TOEFL GRE analysis for studyabroad board
Contributing
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature - Commit your changes:
git commit -am 'Add some feature' - Push to the branch:
git push origin my-new-feature - Submit a pull request :smile:
- All contributions are welcomed :blush:!
Credits
Thanks to
- KyleAMathews for the wonderful loading icons.
- Gosha Arinich for the tutorial on dynamic inputs.
- JedWatson for react dropdown/select library.
License
© 2017 Bill (Chun-Chan) Cheng