Skip to content

Commit

Permalink
Merge branch 'release/v3.0.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
VincentLoy committed Dec 29, 2024
2 parents 0873e74 + a76b3c1 commit 56694f4
Show file tree
Hide file tree
Showing 66 changed files with 4,791 additions and 17,274 deletions.
40 changes: 40 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# EditorConfig is awesome: https://EditorConfig.org

# top-most EditorConfig file
root = true

# All files
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

# TypeScript, JavaScript, CSS, HTML, JSON, Markdown
[*.{ts,js,css,html,md}]
indent_style = space
indent_size = 4
max_line_length = 150

# Markdown files
[*.md]
trim_trailing_whitespace = false
max_line_length = off

# CSS files specific
[*.{css,postcss}]
indent_style = space
indent_size = 2
block_comment_start = /*
block_comment = *
block_comment_end = */

# Package files
[*.json]
indent_style = space
indent_size = 2

# Config files
[*.{yml,yaml,conf}]
indent_style = space
indent_size = 2
23 changes: 0 additions & 23 deletions .eslintrc

This file was deleted.

43 changes: 43 additions & 0 deletions .github/workflows/deploy-pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Simple workflow for deploying static content to GitHub Pages
name: Deploy static content to Pages

on:
# Runs on pushes targeting the default branch
push:
branches: ["master"]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

jobs:
# Single deploy job since we're just deploying
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
# Upload docs/dist directory
path: 'docs/dist'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
10 changes: 4 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
node_modules
bower_components
yarn-error.log

# IntelliJ project files
.idea

dist_tests
yarn.lock
package-lock.json
pnpm-lock.yaml
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
v22.11.0
8 changes: 8 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

{
"recommendations": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"EditorConfig.EditorConfig"
]
}
29 changes: 29 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "never"
},
"editor.defaultFormatter": null,
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"editor.tabSize": 2,
"editor.insertSpaces": true,
"files.eol": "\n",
"files.trimTrailingWhitespace": true,
"files.insertFinalNewline": true,
"editor.rulers": [150],
"editor.wordWrapColumn": 150
}
133 changes: 124 additions & 9 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,124 @@
### Contributing
- Give it a [star](https://github.com/VincentLoy/simplyCountdown.js/stargazers) !
- [Report a bug](https://github.com/VincentLoy/simplyCountdown.js/issues)
- Tweet about it :)

#### Pull Requests
- **Solve a problem**
- For code enhancement, use [ESLint](https://eslint.org/) as a code quality tool.
- Small is better than Big.
# Contributing to SimplyCountdown.js

🎉 Thank you for considering contributing to SimplyCountdown.js! I appreciate your support and I'm excited to collaborate with you. Below are the guidelines to help you get started.

## How to Contribute

### ⭐ 0. Give a Star to the Repository

This step is totally optional... but seriously, who doesn't love some stars? 😉
It's like giving a virtual high-five to the project! 🙌 ⭐ 🙌

### 🔱 1. Fork the Repository

Start by forking the repository to your GitHub account.

### 📥 2. Clone Your Fork

Clone your forked repository to your local machine:

```bash
git clone [email protected]:your-username/simplyCountdown.js.git
cd simplyCountdown.js
```

### 🔧 3. Node.js Version

Make sure you're using the correct Node.js version. You can check the required version in `.nvmrc`. If you use [nvm](https://github.com/nvm-sh/nvm), simply run:

```bash
nvm use
```

This will automatically switch to the correct Node.js version for the project.

### 🛠️ 4. Set Up the Development Environment

Install the necessary dependencies:
We recommend using [bun](https://bun.sh/) as it offers superior performance and seamless dependency management.

```bash
bun install
```

**NOTE:** _For now, `package.json` is running bun commands only, maybe we will have to update this to be compatible with any package management system in the future_

### 🌿 5. Create a Branch

Create a new branch for your feature or bugfix:

```bash
git checkout -b feature/your-feature-name
```

### 💻 6. Make Your Changes

Make your changes to the codebase. Ensure your code follows the project's code style and formatting guidelines.
While developping, you should run this command:

```bash
bun run dev
```

**NOTE:** _This will run a dev server with Vite, update the sources from `src/core` and tests your new features in `docs/src` files like `docs/src/index.html` and `docs/src/assets/js/main.js`. Each changes inside those files will refresh the dev page_

### ✅ 7. Test Your Changes

Build, then, run the tests to make sure your changes don't break anything:

```bash
bun run build
```

then:

```bash
bun run dist:test:serve
```

**NOTE:** _This will generate various HTML files inside a `dist_test` directory and run a temporary node.js server where you can check different implementations and use-cases of the distribution files. Every HTML pages should run a working countdown._

### 💾 8. Commit Your Changes

Commit your changes with a clear and concise commit message:

```bash
git add .
git commit -m "Add feature: your feature description"
```

### 🚀 9. Push to Your Fork

Push your changes to your forked repository:

```bash
git push origin feature/your-feature-name
```

### 🔄 10. Open a Pull Request

Open a pull request from your forked repository to the main repository. Provide a detailed description of your changes and any relevant information.

## Pull Request Process

- Provide a detailed description of your changes in the pull request.
- Link any relevant issues in the pull request description.
- Wait for a maintainer to review your pull request.

## Creating Issues

If you find a bug or have a feature request, please create an issue in the repository. Provide as much detail as possible, including steps to reproduce the issue or a clear description of the feature.

## Code Review Process

All pull requests will be reviewed by a maintainer. The review process includes:

- Checking for code quality and adherence to the style guide.
- Ensuring tests are passing.
- Providing feedback and requesting changes if necessary.

## Documentation

For more information about the project, please refer to the [README.md](README.md) and the [documentation website](https://vincentloy.github.io/simplyCountdown.js/).

Thank you for contributing! 🚀
4 changes: 2 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The MIT License (MIT)

Copyright (c) 2015 Vincent Loy
Copyright (c) 2015-present Vincent Loy

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand All @@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
THE SOFTWARE.
Loading

0 comments on commit 56694f4

Please sign in to comment.