MyLights is a web app that lets you manage and catalogue your highlighted passages from different books you've read. You can categorize each highlight with zero or many tags and then filter the highlights based on author, book, or tag. You can create any tag you like. You can also search your highlights using the search bar.
Users each have their own account. If you'd like to check out a demo account, just send me a message!
Filter on author, book, or tag
Modal forms so you never have to leave the page
Visit the url: https://highlights-catalogue.herokuapp.com/ and sign up with email and password. Start adding your authors, books, tags, and highlights! If you're a kindle user there's two ways to access your highlights and notes by book.
- Log into your kindle account at https://read.amazon.com/notebook. From there you can see your highlights and notes by book.
- In your kindle, go to a book and open the menu. There's an option to send yourself the highlights by email. The email will contain both pdf and csv files with your highlights.
I like to add the highlights to the app one by one, which is my way of reviewing the book and reflecting on what I've read.
- Upload kindle csv file to bulk upload highlights.
- Login with google account
- Clone the repo and
npm install
- Create a local postgres database (for local testing)
- Create a .env file
- Define your .env variables DB_USER, DB_PW, DB_NAME.
- Make sure .env is in .gitignore
- Run
knex migrate:latest
to create the database schema andknex seed:run filename
for each file in the seed folder. (This will also need to be done for the production version. i.e. if using Heroku postgres in production, run the same commands in the Heroku command line) - Use
npm run dev
to run the backend server in hot-reload mode. - Use
npm run hack
to start the front end server in hot-reload mode. - Hack away!
- Postgres Database
- Knex for database migrations, seeding, connections
- NodeJS and Express server for backend with RESTful API
- React front end
- Firebase for authentication