Programming Quotes API for open source projects.
Homepage: programming-quotes-api.herokuapp.com
Github repo: github.com/skolakoda/programming-quotes-api
Suported languages: en, sr.
GET /quotes
(get all quotes)
GET /quotes/lang/en
(get quotes by language)
GET /quotes/page/2
(get quotes by page)
GET /quotes/random
(get random quote)
GET /quotes/random/lang/sr
(get random quote by language)
GET /quotes/id/5a6ce86f2af929789500e824
(get quote by id)
POST /quotes/vote
(post vote)
- required params:
quoteId
,newVote
(number from 1 to 5)
POST /quotes
(for registered user)
- required params:
token
,author
,en
- optional:
source
,sr
- author name should be from Wikipedia
PUT /quotes
(update quote for admin)
- required params:
token
,_id
,author
,en
- optional:
source
,sr
DELETE: /quotes
(for admin)
- required params:
token
,_id
GET /auth/{provider}
(user login)
- suported providers: Github, Google
- opens login page
After successful login, user will be redirected to client app. The client app should handle token on this route: #/auth/{provider}/${token}
.
GET /auth/{provider}:token
(get user data)
- returns info on current user
- Install Node.js
- Set environment variables
Create .env
file proper values:
# Database credentials (obtain from MongoDB)
DB_NAME=
DB_USER=
DB_PASSWORD=
DB_DOMAIN=
# obtain from Github (have two separate OAuth apps, for local and for production)
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
# OAuth 2.0 client IDs (obtain from Google API Console)
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
# whatever random string you like
JWTSECRET=
# use development for local testing
NODE_ENV=development
npm i
npm run dev
See server logs:
heroku logs --app programming-quotes-api
Deploy will be done automatically after merge into master branch.
programming-quotes-api's People
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.