All Projects β†’ BookmarksDev β†’ Bookmarks.dev

BookmarksDev / Bookmarks.dev

Licence: mit
Bookmarks and Code Snippets Manager for Developers & Co

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Bookmarks.dev

Node Express Mongoose Passport Jwt Rest Api Auth
Node, express, mongoose, passport and JWT REST API authentication example
Stars: ✭ 146 (-33.03%)
Mutual labels:  api, rest-api, rest, mongoose, expressjs
Rest Hapi
πŸš€ A RESTful API generator for Node.js
Stars: ✭ 1,102 (+405.5%)
Mutual labels:  api, rest-api, rest, mongoose, mongodb
Rest Api Nodejs Mongodb
A boilerplate for REST API Development with Node.js, Express, and MongoDB
Stars: ✭ 672 (+208.26%)
Mutual labels:  api, rest-api, rest, mongodb, expressjs
Githubapi
Swift implementation of Github REST API v3
Stars: ✭ 55 (-74.77%)
Mutual labels:  api, rest-api, rest, hacktoberfest
Node Express Mongodb Jwt Rest Api Skeleton
This is a basic API REST skeleton written on JavaScript using async/await. Great for building a starter web API for your front-end (Android, iOS, Vue, react, angular, or anything that can consume an API). Demo of frontend in VueJS here: https://github.com/davellanedam/vue-skeleton-mvp
Stars: ✭ 603 (+176.61%)
Mutual labels:  api, rest, mongoose, mongodb
Json Api Dart
JSON:API client for Dart/Flutter
Stars: ✭ 53 (-75.69%)
Mutual labels:  api, rest-api, rest, hacktoberfest
Nodejs Restful Api
How to create a RESTful CRUD API using Nodejs?
Stars: ✭ 285 (+30.73%)
Mutual labels:  api, rest, mongoose, mongodb
Tiledesk Server
Tiledesk server. Tiledesk is an Open Source Live Chat platform written in NodeJs and MongoDB
Stars: ✭ 94 (-56.88%)
Mutual labels:  api, rest-api, rest, mongodb
Openapi Generator
OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)
Stars: ✭ 10,634 (+4777.98%)
Mutual labels:  api, rest-api, rest, hacktoberfest
Node Typescript Mongodb
node js typescript mongodb express generator yo
Stars: ✭ 96 (-55.96%)
Mutual labels:  rest-api, rest, mongoose, mongodb
Rest
REST API generator with Node.js, Express and Mongoose
Stars: ✭ 1,663 (+662.84%)
Mutual labels:  rest-api, rest, mongoose, mongodb
Fastify Api
A blazing fast REST APIs with Node.js, MongoDB, Fastify andΒ Swagger.
Stars: ✭ 138 (-36.7%)
Mutual labels:  api, rest-api, mongoose, mongodb
Udash Core
Scala framework for building beautiful and maintainable web applications.
Stars: ✭ 405 (+85.78%)
Mutual labels:  rest-api, rest, hacktoberfest, frontend
Javacord
An easy to use multithreaded library for creating Discord bots in Java.
Stars: ✭ 368 (+68.81%)
Mutual labels:  api, rest-api, rest, hacktoberfest
Vulcain
Fast and idiomatic client-driven REST APIs.
Stars: ✭ 3,190 (+1363.3%)
Mutual labels:  api, rest-api, rest, hacktoberfest
Appkernel
API development made easy: a smart Python 3 API framework
Stars: ✭ 152 (-30.28%)
Mutual labels:  api, rest-api, rest, mongodb
Mockoon
Mockoon is the easiest and quickest way to run mock APIs locally. No remote deployment, no account required, open source.
Stars: ✭ 3,448 (+1481.65%)
Mutual labels:  api, rest-api, rest, hacktoberfest
Generator Api
πŸš€ Yeoman generator for creating RESTful NodeJS APIs, using ES6, Mongoose and Express
Stars: ✭ 247 (+13.3%)
Mutual labels:  api, rest-api, mongoose, expressjs
Appy Backend
A user system to bootstrap your app.
Stars: ✭ 96 (-55.96%)
Mutual labels:  api, rest, mongoose, mongodb
Koa Restful Boilerplate
Koa 2 RESTful API boilerplate
Stars: ✭ 146 (-33.03%)
Mutual labels:  rest-api, rest, mongoose, mongodb

Bookmarks Manager for Developers & Co

Bookmarks.dev is a bookmarks and code-snippets manager created and designed primarily for Developers & Co. It helps you save time and nerves when managing your dev bookmarks and eases bookmarking of code snippets via Codelets. Check our HowTo page to help you get started:

Save to Bookmarks.dev chrome extension usage

Most worthy public bookmarks are published regularly on Github in a separate repository.


Getting started (development or self hosting)

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

The project is developed with the MEAN stack and Keycloak for authentication and authorization: components-graph

The project contains two parts

  • frontend which makes up the User Interface. This uses with Angular and Angular CLI.
  • backend which is the API supporting the UI. It uses ExpressJS with MongoDB and Keycloak. See the OpenAPI specification

Prerequisites

What you need to run this app:

  • node and npm (we recommend using NVM)
    • Ensure you're running Node at least (v10.x.x+) and NPM (6.x.x+)
  • nodemon - npm install -g nodemon
  • Docker - we recommend using Docker Desktop

Docker and Docker-compose are currently used only for local development

Installing (development setup)

Start MongoDB and Keycloak server

For the first time uncomment the following line:

    #command: -Dkeycloak.migration.action=import -Dkeycloak.migration.provider=dir -Dkeycloak.migration.dir=/tmp/keycloak/export-import -Dkeycloak.migration.strategy=IGNORE_EXISTING

in the docker-compose file, so that the initial Keycloak setup (realm and users) is loaded.

For further startups of docker-compose you should comment back this line, as it starts faster

docker-compose up

Use -d to run it in the background

Install and run (frontend & backend)

You want to have the backend API running first with the following commands:

# install
nvm use   #only if you are using nvm
npm install

# run
npm run frontend #to run the frontend
npm run backend #to run the backend

#alternatively run in parallel
npm start

or in one line nvm use; npm install; npm start

This starts

  • the API with nodemon at http://localhost:3000/api and will watch for code changes in backend and automatically redeploy.
  • the frontend available at http://localhost:4200. Login the user/password mock/mock configured for you in the initial Keycloak setup. Some bookmarks are initially loaded with your account so you can start playing with them.

You can create your own test user, or any other extra users by following the screenshots in Add a Keycloak user to create it.

To be able to automatically add youtube videos published date and duration to the title you need to create a nodemon.json file based on the backend/nodemon.json.example and your own youtube api key

Testing

Backend

Integration tests

Keycloak and mongodb have to be started as specified above (docker-compose up command)

Run the integration test by issuing the following command.

cd backend;
npm run integration-tests

A report will be generated.

Debugging

Frontend

Dev Tools in Chromium browsers

You can use the Dev Tools in Chromium based browsers (e.g. Chrome, Brave). Navigate to Sources and the file you want to set your break points, like in the following example:

chrome-dev-tools-debugging

IntelliJ

In IntelliJ you add Javascript Debug configuration as shown below:

Intelli-frontend-debugging

Backend

IntelliJ / Webstorm (Node.js plugin is required)

The npm run debug starts nodemon with the --inspect parameter so you can attach to this process, by using the following configuration: nodejs-remote-debugging

Visual Studio Code

See Node.js debugging in VS Code with Nodemon

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Changelog

The changelog is available in CHANGELOG.md

To update the changelog execute the following commands:

nvm use
standard-changelog

License

This project is licensed under the MIT License - see the LICENSE file for details

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].