Skip to content

kitconcept/kitconcept.intranet

Repository files navigation

kitconcept Intranet πŸš€

Built with Cookieplone Tests

A Plone distribution for Intranets with Plone. Created by kitconcept.

Quick Start 🏁

Prerequisites

Set up local demo instance

  • Clone repository with git clone https://github.com/kitconcept/kitconcept.intranet.git
  • Change directory to "kitconcept.intranet" with cd kitconcept.intranet
  • Start Docker containers with docker-compose up
  • Open kitconcept.intranet in your browser by typing http://kitconcept-intranet.localhost/ into your browser URL field

Development

Prerequisites βœ…

Ensure you have the following installed:

Installation πŸ”§

  1. Clone the repository:
git clone git@github.com:kitconcept/kitconcept.intranet.git
cd kitconcept.intranet
  1. Install both Backend and Frontend:
make install

Fire Up the Servers πŸ”₯

  1. Create a new Plone site on your first run:
make backend-create-site

or create the site manually by visiting http://localhost:8080/.

  1. Start the Backend at http://localhost:8080/:
make backend-start
  1. In a new terminal, start the Frontend at http://localhost:3000/:
make frontend-start

Voila! Your Plone site should be live and kicking! πŸŽ‰

Manual site creation πŸ”₯

Point your browser at http://localhost:8080/ and you will be greated with the site creation page:

first step

After selecting kitconcept Intranet you will see a form:

first step

Amend Example Content

First, make sure that you do not have the backend process running.

Delete existing site and all its content and re-create a new Plone site:

make backend-delete-and-create-site

Start the backend with:

make backend-start

and amend the content on the site.

Stop the backend by killing the make backend-start process (CTRL+C).

Export the content of the Plone site to your local repository (make sure the backend is stopped for this):

make backend-update-example-content

Show the diff in your local repository:

git diff

Commit your changes:

git add .
git checkout -b <MY_BRANCH>
git commit . -m"<MY_COMMIT_MESSAGE>"
git push

Go to github.com/kitconcept/kitconcept.intranet and click on the banner that shows your PR. Click on "Compare & pull request".

Authentication

Choosing Keycloak for user authentication will present configuration options:

first step

Choosing OIDC / OAuth2 for user authentication will present configuration options:

first step

Choosing Google for user authentication will present configuration options:

first step

Choosing GitHub for user authentication will present configuration options:

first step

Local Stack Deployment πŸ“¦

Deploy a local Docker Compose environment that includes:

  • Docker images for Backend and Frontend πŸ–ΌοΈ
  • A stack with a Traefik router and a Postgres database πŸ—ƒοΈ
  • Accessible at http://kitconcept.intranet.localhost 🌐

Execute the following:

make stack-start
make stack-create-site

And... you're all set! Your Plone site is up and running locally! πŸš€

Project Structure πŸ—οΈ

This monorepo consists of three distinct sections: backend, frontend, and devops.

  • backend: Houses the API and Plone installation, utilizing pip instead of buildout, and includes a policy package named kitconcept.intranet.
  • frontend: Contains the React (Volto) package.
  • devops: Encompasses Docker Stack, Ansible playbooks, and Cache settings.

Why This Structure? πŸ€”

  • All necessary codebases to run the site are contained within the repo (excluding existing addons for Plone and React).
  • Specific GitHub Workflows are triggered based on changes in each codebase (refer to .github/workflows).
  • Simplifies the creation of Docker images for each codebase.
  • Demonstrates Plone installation/setup without buildout.

Code Quality Assurance 🧐

To automatically format your code and ensure it adheres to quality standards, execute:

make check

Linters can be run individually within the backend or frontend folders.

Internationalization 🌐

Generate translation files for Plone and Volto with ease:

make i18n

Credits and Acknowledgements πŸ™

Crafted with care by Generated using Cookieplone (0.7.0) and cookiecutter-plone (9937161) on 2024-05-28 19:04:49.900739. A special thanks to all contributors and supporters!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors 14