Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/danstarns/project.md
📝 Exemplary markdown inspired project management built with; React, Node, GraphQL, MongoDB, Redis & Minio/S3.
https://github.com/danstarns/project.md
example graphql help-wanted markdown minio mongodb nodejs react redis
Last synced: 22 days ago
JSON representation
📝 Exemplary markdown inspired project management built with; React, Node, GraphQL, MongoDB, Redis & Minio/S3.
- Host: GitHub
- URL: https://github.com/danstarns/project.md
- Owner: danstarns
- License: mit
- Created: 2020-05-18T12:58:28.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-07T20:30:54.000Z (almost 2 years ago)
- Last Synced: 2024-10-09T10:02:52.201Z (about 1 month ago)
- Topics: example, graphql, help-wanted, markdown, minio, mongodb, nodejs, react, redis
- Language: JavaScript
- Homepage:
- Size: 7.79 MB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 57
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Project.md
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/danstarns/project.md) [![Ask Me Anything !](https://img.shields.io/badge/Ask%20me-anything-1abc9c.svg)](https://github.com/danstarns/project.md/issues) [![made-with-Markdown](https://img.shields.io/badge/Made%20with-Markdown-1f425f.svg)](http://commonmark.org)
> Work in progress 👷♂️
![banner](./assets/banner.png)
📝 Exemplary markdown inspired project management built with; React, Node, GraphQL, MongoDB, Redis & Minio/S3.
Tired of complicated project management systems? What something that speaks to the Markdown 🐱👤 inside of you? Project.md is designed with simplicity at its heart, letting you manage projects & present your ideas with pure Markdown. No longer shall you recursively search nested 'sub tasks' to oblivion.
# Tech Stack
1. Backend
* Node.JS
* Minio/S3
* MongoDB
* Redis
3. Frontend
* React.JS# Contributing
All contribution's welcome 🍺 Make a PR or issue & let's take it from there.# Getting Started
> **Environment variables** copy `./.env.example` => `./.env` You may need to adjust variables to suit your setup.### Emails
This project uses [Nodemailer](https://nodemailer.com/about/) to send emails, you will need to adjust the config in either `./server/.env` or if you are using [Docker](#docker) adjust the variables in `./docker-compose.yml`.```
EMAIL_HOST=smtp.ethereal.email
EMAIL_PORT=587
EMAIL_USER=testuser
EMAIL_PASSWORD=password
EMAIL_SECURE=true
[email protected]
```## Server
1. [MongoDB Server](https://www.mongodb.com/)
2. [Redis](https://redis.io/)
3. [Minio](https://min.io/)
4. `cd server`
5. `npm install`
6. `npm run start`## Renderer Service
1. [MongoDB Server](https://www.mongodb.com/)
2. [Redis](https://redis.io/)
3. [Minio](https://min.io/)
4. `cd services/renderer`
5. `npm install`
6. `npm run start`## Client
1. `cd client`
2. `npm install`
3. `npm run start`## Docker
> Use this to start client, server & dependencies all at once, take consideration for any conflicting services. Make sure you configure **email** config in docker.compose.yml 🐳1. `docker-compose up`
### Docker Containers
> Use the following commands to setup the dependencies manually#### MongoDB
```
$ docker run -d --publish 27017:27017 --name project-md-mongo mongo
```#### Redis
```
$ docker run -d --publish 6379:6379 --name project-md-redis redis
```#### Minio/S3
```
$ docker run -d --publish 9000:9000 --name project-md-minio -e MINIO_ACCESS_KEY=accesskey -e MINIO_SECRET_KEY=secretkey minio/minio server /data
```# Screenshots
> Demo coming soon, style is work in progress 🏗## Global Search
![Global Search](./assets/global-search.gif)## Documents
![Documents](./assets/documents.sneek.png)## Create Document
![create Document](./assets/create-document.sneek.png)## Document Export
![PDF export](./assets/pdf-export.gif)
### Markdown
![Markdown export](./assets/markdown-export.gif)## Project
![Project Page](./assets/project-sneek.png)## Profile
![Profile Page](./assets/profile-sneek.png)