Skip to content

ScrumLATAMComunidad/scrumlatamcomunidad.com

Β 
Β 

Repository files navigation

SCRUM LATAM Comunidad Web portal

The SCRUM LATAM Comunidad Web portal repository.

Spanish

Built with Cookiecutter Plone Starter Black code style Backend Tests Frontend Tests All Contributors

A new SCRUM LATAM Comunidad Web portal using Plone 6 and Volto technologies.

Quick start

Development Setup

  • Python 3.9, 3.10, 3.11
  • Node 16
  • yarn
  • Docker

Install

Install the requirements dependencies, executing the following command:

sudo apt install build-essential python3-dev python3-venv git tree curl

Download and install Node Version Manager - NVM, executing the following command:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

Setting the nvm script into console environments to use it, executing the following command:

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" \
   [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

To reflect the nvm script changes in the terminal environments to use it, executing the following command:

source ~/.bashrc && exit

Launch the terminal again and continues with execute the next commands.

Install Node 16 Version:

Download and install Node 16 Version, executing the following command:

nvm install 16

Enable the Node 16 Version to use it, executing the following command:

nvm use 16

Install yarn tool, executing the following command:

npm install --global yarn

Clone and install the git repository, executing the following command:

git clone git@github.com:ScrumLATAMComunidad/scrumlatamcomunidad.com.git scrumlatamcomunidad-com && cd $_

Install the dev stack, executing the following command:

make install

Start

Open two consoles to run each of the following commands in each of them:

Start the Backend (http://localhost:8080/)

make start-backend

Start the Frontend (http://localhost:3000/)

make start-frontend

Help

For more details information about tasks available for command make, executing the following command:

make help

Structure

This monorepo is composed by two distinct codebases: api and frontend.

  • backend: API (Backend) Plone installation using pip (not buildout). Includes a policy package named slc_web. More details information at backend/src/slc_web/README.md file.
  • devops: Devops Deployments scripts por this monorepo. More details information at devops/README.md file.
  • frontend: React (Volto) package named frontend. More details information at frontend/README.md file.

Reasoning

  • Repo contains all codebase needed to run the site (excluding existing addons for Plone and React).
  • Github Workflows are triggered based on changes on each codebase (see .github/workflows)
  • Easier to create Docker images for each codebase
  • Showcase Plone installation/setup without buildout

Linters and Formatting

There are some hooks to run lint checks on the code. If you want to automatically format them, you can run

make format

in the root folder or especifically in each backend or frontend folders.

Linters commands are available in each backend and frontend folder.

Acceptance tests

There are Makefile commands in place:

build-test-acceptance-server: Build Acceptance Backend Server Docker image that it's being used afterwards. Must be run before running the tests, if the backend code has changed.

start-test-acceptance-server: Start server fixture in docker (previous build required)

start-test-acceptance-frontend: Start the Core Acceptance Frontend Fixture in dev mode

test-acceptance: Start Core Cypress Acceptance Tests in dev mode

Analytics summary

Alt

Contributors

Leonardo J. Caballero G.
Leonardo J. Caballero G.

πŸ› 🚧 πŸš‡ πŸ“– πŸ”§ πŸ›‘οΈ πŸ’¬ 🌍 πŸ’» ⚠️ πŸ““ πŸ“† πŸ‘€ πŸ€”
Humberto R Hansen.
Humberto R Hansen.

πŸ” πŸ› 🚧 πŸš‡ πŸ›‘οΈ πŸ“– πŸ”§ πŸ’¬ 🎨 🌍 πŸ’» πŸ““ πŸ‘€ πŸ€”
Manuel Matos
Manuel Matos

πŸ› 🎨 🌍 πŸ’» ⚠️ πŸ““
Juan Lopez
Juan Lopez

πŸ› 🎨 πŸ’» 🌍 πŸ““
Ruben Dario Romero Chica
Ruben Dario Romero Chica

πŸ’Ό πŸ§‘β€πŸ« πŸ“‹ πŸ” πŸ› πŸ“– πŸ–‹ πŸ’¬ πŸ“† πŸ€”
Emilia Miranda
Emilia Miranda

πŸ› πŸ“– πŸ–‹ πŸ’¬ πŸ“† πŸ€”
Vanessa Apaza
Vanessa Apaza

πŸ› πŸ“– πŸ–‹ πŸ’¬ πŸ“† πŸ€”
Lizbeth Martel
Lizbeth Martel

πŸ› πŸ“– πŸ–‹ πŸ’¬ πŸ“† πŸ€”
Enny Infante
Enny Infante

πŸ› πŸ“– πŸ–‹ πŸ’¬ πŸ“† πŸ€”

This project follows the all-contributors specification. Contributions of any kind welcome!

For see only the source code contributors checkout the contributors graphs.

Credits

This was generated by cookiecutter-plone-starter on 2023-05-11 04:07:02

License

Licensing by GNU GENERAL PUBLIC LICENSE Version 2, for more details checkout LICENSE file.