Skip to content

juananmuxed/teamcoo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TeamCoo Logo

HR Platform for Non-profit associations

⌨️ with ❀︎ by MuXeD


License Discord

GitHub Status

Release GitHub issues by-label GitHub commit activity

Demo deploy status

Develop Status Develop Status Website

πŸ₯“ TeamCoo

TeamCoo is a platform for non-profit Associations that need to manage large numbers of Volunteers. MEVN (Mongo, Express, Vue, Node) technology based.

Small associations need some way to unify all the Human Resources options when it comes to gathering Volunteers to do different tasks.

πŸ“Œ Versions

Used SemVer for versions. For all available version, see tags.

And here the Changelog

🍩 Screenshots

Deleted until standards

πŸ— Built with

🌳 Dependencies

πŸŽ‰ Features

  • Signup new users and user flow
  • Add Workgroups to group people and start to join it
  • Add Common or Specific question for Users to join Workgroups
  • Add Tasks for the Workgroups to start to work in it and control members
  • Add new Static Pages or configure the basics (CMS)
  • Edit and delete all from the database

πŸ₯ͺ Installation

We pack all the application to run in a Docker server for easy Deploy.

Development

To run in local:

Requirements:

  • Node 12 at least
  • MongoDB
  • Nodemon in global npm install nodemon -g

Clone the repo

git clone https://github.com/juananmuxed/teamcoo.git

Access to the folder

cd teamcoo

Create (or modify) the .env.development to Enviorement Variables

WEB_NAME = name_ong;
MONGO_ROOT_USER = rootname;
MONGO_ROOT_PASSWORD = rootpass;
MONGOEXPRESS_LOGIN = teamcoo;
MONGOEXPRESS_PASSWORD = pass;
MONGODB_ADMIN_PORT = 8081;
SECRET_STRING = verysecret;
API_VERSION = 1;
DATABASE_HOST = localhost;
DATABASE_NAME = teamcoo;
DATABASE_PORT = 27017;
API_PORT = 3000;

Then access to 2 folders (2 console prompt is easier)

CONSOLE 1: cd api
CONSOLE 2: cd client

Run the scripts

CONSOLE 1: npm i
CONSOLE 1: npm run dev
CONSOLE 2: npm i
CONSOLE 2: npm run serve

And you can access to the application via web browswer in http://localhost:8080

Production

Start

Easy, you need Docker in the Deploy server or machine

Requirements:

  • Docker

Clone the repo

git clone https://github.com/juananmuxed/teamcoo.git

Access to the folder

cd teamcoo

Config

Create the .env.production like .env.development

WEB_NAME = name_ong;
MONGO_ROOT_USER = rootname;
MONGO_ROOT_PASSWORD = rootpass;
MONGOEXPRESS_LOGIN = teamcoo;
MONGOEXPRESS_PASSWORD = pass;
MONGODB_ADMIN_PORT = 8081;
SECRET_STRING = verysecret;
API_VERSION = 1;
DATABASE_HOST = localhost;
DATABASE_NAME = teamcoo;
DATABASE_PORT = 27017;
API_PORT = 3000;

Create the "production" urls to API

  // client/.env.production
  VUE_APP_BASE_URL_API=http://localhost:3000 // https://api.domain.com/
  VUE_APP_API_VERSION=1

This is just for external use like Emails or other next features (for example Share)

Build

Build de vue app with the npm run build command and create a .htaccess file in the .dist folder with this content (just Apache):

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteRule ^index\.html$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.html [L]
</IfModule>

Use this for other config files: History mode Vue

And point the web to .dist folder

And up the Network and use de .env.production

docker-compose --env-file ./.env.production up -d

Next

The ports by default:

  • API: 3000
  • DB-Admin: 8081
  • Database: 27017

πŸ₯˜ Wiki

🚧 Under construction

πŸ’– Associations in this project

Catapa

Catapa

Website

Website

❓ Want this App

If you are an Association and want something like this. Contact via email, or any other method with me.

🍰 Contributing

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests.

β˜•οΈ Buy Me a Coffee

ko-fi Liberapay patrons

πŸ“‘ License

MIT Β© MuXeD