Skip to content

Commit cdb1f33

Browse files
Merge pull request #130 from vim/feature/contributors-guide
Feature/contributors guide
2 parents 9a816e6 + 482a801 commit cdb1f33

14 files changed

+13190
-4440
lines changed

.github/workflows/deploy-vm.yml

+5-5
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
host: ${{ secrets.SSH_HOST }}
3434
username: ${{ secrets.SSH_USER }}
3535
key: ${{ secrets.SSH_KEY }}
36-
source: "./docker-compose.dev.yml,./.env"
36+
source: "./compose.prod.yml,./.env"
3737
target: "~/${{ github.event.repository.name }}/"
3838

3939
- name: pull & start container images
@@ -46,7 +46,7 @@ jobs:
4646
script: |
4747
cd ~/${{ github.event.repository.name }}/
4848
echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{github.actor}} --password-stdin
49-
docker compose -f docker-compose.dev.yml pull
50-
docker compose -f docker-compose.dev.yml down
51-
docker compose -f docker-compose.dev.yml up -d --wait --no-build --force-recreate
52-
docker compose -f docker-compose.dev.yml logs -t -n 50
49+
docker compose -f compose.prod.yml pull
50+
docker compose -f compose.prod.yml down
51+
docker compose -f compose.prod.yml up -d --wait --no-build --force-recreate
52+
docker compose -f compose.prod.yml logs -t -n 50

.nvmrc

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
18.18.2

CONTRIBUTING.md

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Contributing to Vim Website
2+
3+
First of all, thanks for your interest in contributing to the new website. All tasks, whether they are bug fixes or new features, are tracked as issues in our GitHub repository. For each issue, we follow a feature-branch workflow.
4+
5+
The `development`-branch is the primary branch for ongoing work, while the `main`-branch is reserved for production deployment. When addressing an issue, please create a new feature branch from `development` with the branch name matching the issue id or title (e.g. feature/(id or title)), then submit a PR for review. Once your PR is reviewed and approved, it will be merged into development.
6+
7+
## Commit Messages
8+
9+
We follow the Conventional Commits specification. Please use the structure explained in the [quick summary](https://www.conventionalcommits.org/en/v1.0.0/#summary) of the specification. Commit messages are written in the imperative present tense, describing what the commit does, as if giving a command or instruction. Examples are listed below.
10+
11+
```text
12+
feat(web): add redirect instead of console.log (due to linting)
13+
fix(ci): avoid running deploy job on PR pushes
14+
chore(deps-dev): bump eslint-plugin-unused-imports from 3.1.0 to 3.2.0 in /cms
15+
```
16+
17+
## Development Setup
18+
19+
The setup for this project consists of three main parts: the website (web), the content management system (cms), and the database (db). The website is built with Next.js, while the CMS is Strapi, and MySQL 8 is used for the database. You'll need Node.js with npm for both web and cms. If you want to start the applications without docker please refer to the specific Node.js versions indicated in the `.nvmrc` file or the `engines` field in `package.json`. However, we use Docker to facilitate the development process. Both the website and CMS have their own Dockerfile. All components are managed together in a docker-compose file.
20+
21+
For more information about the headless CMS used in this project, visit the official documentation: https://docs.strapi.io/
22+
23+
### Prerequisites
24+
25+
- Docker and Docker Compose
26+
- Node.js and NPM
27+
- MySQL 8
28+
- Node version manager NVM
29+
- Make
30+
31+
### Getting Started
32+
33+
```sh
34+
git checkout development
35+
36+
# if you have node version manager installed otherwise ensure you have the correct node version, specified in .nvmrc
37+
nvm use
38+
39+
# see makefile for available commands
40+
make
41+
42+
# i.e install dependencies, setup .env files, start containers for local development and show logs
43+
make dev logs
44+
```

README.md

+13-25
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
21
# Overview
32

4-
This is the relaunch of the new www.vim.org website. We have found a small team that will take on the
3+
This is the relaunch of the www.vim.org website. We have found a small team that will take on the
54
beautiful task of rebuilding the website with current design and new concepts.
65

76
The new development should not take place behind closed doors, we want to
@@ -11,6 +10,13 @@ Soon there will be a test system where you can follow the current status success
1110

1211
Of course, we will involve you, the community, in the design by collecting ideas and feedback.
1312

13+
Please read the [contribution guidelines](CONTRIBUTING.md) if you want to help out.
14+
15+
### New Design
16+
17+
The link below leads to a publicly accessible Miro board that contains a first draft of the new website design:
18+
https://miro.com/app/board/uXjVKobQViM=/?share_link_id=158721849826
19+
1420
# Build
1521

1622
Prerequisites
@@ -20,33 +26,16 @@ Prerequisites
2026

2127
### Getting started
2228

23-
Run the application locally with these make commands.
29+
Run the application locally with the following commands.
2430

2531
```sh
2632
# start prebuilt containers
2733
make start
28-
29-
# or start containers for local development
30-
make dev
3134
```
3235

3336
This will setup default configuration (including dummy secrets),
3437
install npm dependencies and start the application using docker on port `3000`.
3538

36-
### Build locally
37-
38-
The following steps must be carried out:
39-
1. Copy contents of `.env.example` files on `root`, `root/cms` and `root/web` into `.env` file
40-
2. Install npm dependencies with `npm install` in the `root`, `root/cms` and `root/web` folder.
41-
3. Startup: `docker compose -f docker-compose.local.yml up`
42-
43-
For more information about the headless CMS used in this project, visit the official documentation: https://docs.strapi.io/
44-
45-
# New Design
46-
47-
The link below leads to a publicly accessible Miro board that contains a first draft of the new website design:
48-
https://miro.com/app/board/uXjVKobQViM=/?share_link_id=158721849826
49-
5039
# Requirements
5140

5241
Add your requirements here:
@@ -66,21 +55,20 @@ Add your requirements here:
6655
* The hashing of the user passwords is to be migrated to a hashing procedure that corresponds to the state of the art.
6756
* The frontend/backend stack shall:
6857
- should be maintainable and expandable in the future with reasonable effort
69-
- be opensource based
58+
- be Open Source based
7059
- the components used should be vital
7160
- shall be efficient with server resources
7261

7362

7463
# Idea collection
7564

76-
This is a unfinished and unstructed list of ideas:
65+
This is a unfinished and instructed list of ideas:
7766

7867
- Tutorial section
7968
- Vim tips revival
8069
- The vim tricks
81-
- My personal ".vimrc", with annotations about motivations
82-
- Blog posts and annountements for the maintainers and artive editors
70+
- My personal `.vimrc`, with annotations about motivations
71+
- Blog posts and announcements for the maintainers and active editors
8372
- Link resource section
84-
- "How to contribute" section
8573
- Vim distributions for the various platforms
8674

cms/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ coverage
109109
license.txt
110110
exports
111111
*.cache
112+
.strapi
112113
dist
113114
build
114115
.strapi-updater.json

cms/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,4 @@ RUN chown -R node:node /opt/app
1616
USER node
1717
RUN ["npm", "run", "build"]
1818
EXPOSE 1337
19-
CMD ["npm", "run", "develop"]
19+
CMD ["npm", "run", "dev"]

cms/README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22

33
Strapi comes with a full featured [Command Line Interface](https://docs.strapi.io/dev-docs/cli) (CLI) which lets you scaffold and manage your project in seconds.
44

5-
### `develop`
5+
### `dev`
66

77
Start your Strapi application with autoReload enabled. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-develop)
88

99
```
10-
npm run develop
10+
npm run dev
1111
# or
12-
yarn develop
12+
yarn dev
1313
```
1414

1515
### `start`

0 commit comments

Comments
 (0)