An open API service indexing awesome lists of open source software.

https://github.com/simple-works/notes

📝 Public Notes Sharing Web Application.
https://github.com/simple-works/notes

backend express frontend nodejs note-taker note-taking note-taking-app notes notes-app online-note social-network template template-project vue vuejs

Last synced: about 2 months ago
JSON representation

📝 Public Notes Sharing Web Application.

Awesome Lists containing this project

README

          

# ![Icon](./icon.png?raw=true) Amb-Notes

[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/Ambratolm/amb-notes/Node.js%20CI?logo=github)](https://github.com/Ambratolm/amb-notes/actions/workflows/node.js.yml)
[![Web](https://img.shields.io/badge/web-blue?logo=w3c)](https://github.com/topics/web)
[![JavaScript](https://img.shields.io/badge/javaScript-blue?logo=javascript)](https://github.com/topics/javascript)
[![VueJS](https://img.shields.io/github/package-json/dependency-version/Ambratolm/ambratolm-web/vue?logo=vue.js)](https://github.com/topics/vuejs)
[![Bulma](https://img.shields.io/github/package-json/dependency-version/Ambratolm/ambratolm-web/bulma?logo=bulma)](https://github.com/topics/bulma)

Public Notes Sharing Web Application.

[**🌐 View Live Demo**](https://amb-notes.herokuapp.com)

## 📖 Table of contents

- [📜 Introduction](#-introduction)
- [🏁 Getting started](#-getting-started)
- [✈️ Deployment](#-deployment)
- [📐 Design](#-design)
- [🚀 Development](#-development)
- [🏭 Environment](#-environment)
- [🌕 Frontend](#-frontend)
- [🌑 Backend](#-backend)

## 📜 Introduction

This is a simple **Web application** that allows users to **post public notes** that others can see on the home page.

It is mainly built with **VueJS** and **ExpressJS**. It implements many **common features** using many **libraries**.

This project can be used for **learning purposes** or as a **starter template** for building similar applications.

## 🏁 Getting started

1. Clone the repository:

```bash
cd somewhere
git clone https://github.com/Ambratolm/amb-notes.git
cd amb-notes
```

2. Install the dependencies:

```bash
npm i
```

3. Install [**Nodemon**](https://github.com/remy/nodemon/) globally:

```bash
npm i -g nodemon
```

4. Run app server:

```bash
npm run serve
```

4. Run api server:

```bash
npm run api
```

## ✈️ Deployment

To deploy the project in a node environment:

1. Push the repository to a node server using a service like [Heroku](https://heroku.com).

2. Install the dependencies:

```bash
npm i
```

3. Build the app:

```bash
npm run build
```

7. Start the app:

```bash
npm start
```

You can also do the same to deploy locally.

## 📐 Design

- [👚 Models](./docs/models.md)
- [✨ Features](./docs/features.md)
- [📝 ToDos](./docs/todos.md)

## 🚀 Development

The initial project was generated using [**Vue CLI**](https://github.com/vuejs/vue-cli) tool.

### 🏭 Environment

- Runtime: [**NodeJS**](https://github.com/nodejs)
- Package Manager: [**NPM**](https://github.com/npm)
- Editor: [**Sublime Text**](https://www.sublimetext.com)

### 🌕 Frontend

- ⚛️ Core:
- Main: [**VueJS**](https://github.com/vuejs/vue)
- Routing: [**Vue Router**](https://github.com/vuejs/vue-router)
- State Management: [**Vuex**](https://github.com/vuejs/vuex)
- 🎨 UI:
- Main: [**Bulma**](https://github.com/jgthms/bulma) / [**Buefy**](https://github.com/buefy/buefy)
- Theme: [**Bulmaswatch**](https://github.com/jenil/bulmaswatch)
- Icons: [**Font Awesome**](https://github.com/FortAwesome/Font-Awesome)
- Animations: [**Animate.CSS**](https://github.com/daneden/animate.css)
- 🔧 Utils:
- AJAX: [**Axios**](https://github.com/axios/axios)
- HTML Metadata: [**Vue Meta**](https://github.com/nuxt/vue-meta)
- Dates Format: [**Moment**](https://github.com/moment/moment/) / [**Vue Moment**](https://github.com/brockpetrie/vue-moment)
- Form Validation: [**VeeValidate**](https://github.com/logaretm/vee-validate)
- Data Persistence: [**VuexPersist**](https://github.com/championswimmer/vuex-persist)
- Array Handling and Common Tasks: [**Lodash**](https://github.com/lodash/lodash)

### 🌑 Backend

The backend **API** and **Database** (_Using [file system](https://nodejs.org/api/fs.html) for the moment_) are powered by:

- ⚛️ Core:
- Main: [**NodeJS**](https://github.com/nodejs/node) / [**ExpressJS**](https://github.com/expressjs/express)
- 💽 Database:
- Main: [**File System**](https://nodejs.org/api/fs.html) _(⚠️ For the moment)_
- 🔧 Utils:
- Array Handling: [**Lodash**](https://github.com/lodash/lodash)
- Data Validation: [**Joi**](https://github.com/hapijs/joi)
- Authentication: [**JsonWebToken**](https://github.com/auth0/node-jsonwebtoken)
- ID Generation: [**UuidJS**](https://github.com/uuidjs/uuid)
- Password Hash Generation: [**Bcrypt.JS**](https://github.com/dcodeIO/bcrypt.js)
- Error Classification: [**Common Errors**](https://github.com/shutterstock/node-common-errors)
- Console Coloration: [**Colors.JS**](https://github.com/Marak/colors.js)
- Mock Data Generation: [**Faker.JS**](https://github.com/marak/Faker.js)

## 📄 License

Licensed under [MIT](./LICENSE).