Book Store is RESTful API that enables you to create, edit and share your favourite books. It's stable, intuitive and, best of all, free! It was built using modern technologies like PostgreSQL and Node.
- Accessing a Live Instance
- API Documentation
- Our Tech Stack
- Installation and Setup
- Contributing
- Licence
An instance of this app has been deployed to Heroku and is accessible to everyone. You may access it by visiting this link.
The complete documentation for this RESTful API and all of its endpoints can be found at this link.
This project was built using modern technology tools. These include:
- Node.js: an open-source JavaScript runtime that makes it possible to run JavaScript outside of a web browser.
- PostgreSQL: an open source database.
- Sequelize: a promise-based O.R.M for Node.js v4 and above. It supports PostgreSQL, MySQL, SQLite and MSSQL.
- Git: an open-source version control software that is used to keep track of the changes made over time to different files. It also makes it easy for multiple people to collaboratively change those files and share their changes.
Here are the steps you need to follow to run this project on your computer:
-
Install Node.js: You may visit this link for complete instructions on installing Node.js on your computer.
-
Install PostgreSQL: You may visit this link for instructions on setting up PostgreSQL on your computer. When you're done, please note your database name, port, username and password.
-
Install Git: If you don't have Git installed, please consult this link for information about how to install it on your computer.
-
Open a terminal/command prompt on your computer and
cd
into your preferred path/location. -
Clone this repo: Enter this command in the terminal:
git clone https://github.com/foladipo/book-store-api.git
- Install dependencies: Do so by running the following command:
npm install
Note: npm
is a component of Node.js that serves as its package manager.
So, it comes along with installing Node.js.
-
Add the required environment variables: Consult the
.env.sample
file at the root of this repository for info about the different environmental variables you need to specify for this app. When you're done, save your changes in a.env
file in the root of the repo. (Note that you may not have all of the required values until later in this installation process. So it's fine to leave such values for now.) -
Initialize the DB: Run the following commands:
npm run db:migrate
These will create the required tables in the app's database.
- That's it! You may now run
npm start
and the app will run on your computer. Visitlocalhost:PORT
to browse it. Note thatPORT
will be the value you specified in.env
, but it will be3001
if you did not specify it.
Found a bug? You can send us a bug report by creating a new issue at this link. If you would rather fix the bug(s) than simply tell us about it, please consult this document for instructions on how to create a fork of this project, implement your solutions and submit a pull request.
Similarly, if you want to help add a new feature, please use this document as a guide on how to fork this repo, add your feature(s) and submit a pull request.
Lastly, you can send your suggestions, feedback etc by tweeting at the Lead Developer, Folusho Oladipo.
This project is authored by Folusho Oladipo and is licensed for your use, modification and distribution under the MIT license. Feel free to hack, extend and share it!
Thanks for using this project. Happy hacking!