Skip to content

macagua/slc-sitioweb

Repository files navigation

SCRUM LATAM Comunidad Website

The Scrum Latam Comunidad Website repository.

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

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

Quick start

Development Setup

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

Install

git clone git@github.com:ScrumLATAMComunidad/slc-sitioweb.git
cd slc-sitioweb
make install

Start

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

make start-backend

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

make start-frontend

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_sitioweb
  • frontend: React (Volto) package named frontend

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

Credits

This was generated bycookiecutter-plone-starteron 2023-05-11 04:07:02