Skip to content

Latest commit

 

History

History
92 lines (59 loc) · 2.7 KB

CONTRIBUTING.md

File metadata and controls

92 lines (59 loc) · 2.7 KB

Contributing

Excited to hear that you are interested in contributing to this project! Thanks!

Documentation

Documentation is now being synced from the /docs folder to the slidevjs/docs repo.

All Pull Requests for documentation changes should still be made to this repository. Any merged changes will be automatically mirrored to the new documentation repo.

The easiest way to contribute documentation to this project is to follow these steps:

  1. Fork the repository, for example to https://github.com/octocat/slidev, where octocat is your GitHub username.
  2. Clone the newly forked repo from your GitHub account
  3. Create a new branch to add your work to, i.e. git checkout -b docs/update-contributing-guidelines
  4. Make your changes and commit them
  5. Push the branch to your fork
  6. Go to https://github.com/slidevjs/slidev/pulls, there should be a "Compare & Pull Request" button, where you can create a PR.

Setup (in your browser)

You can contribute through a development environment in your browser by clicking the following button:

Open in Gitpod

Setup (locally)

This project uses pnpm to manage the dependencies, install it if you haven't via

npm i -g pnpm

Clone this repo to your local machine and install the dependencies.

pnpm install

Development

To build all the packages at once, run the following command on the project root

pnpm build

Build with watch mode

pnpm dev

Run Demo

To run Slidev locally, you can run

pnpm demo:dev

Or with the real-world example Composable Vue:

pnpm demo:composable-vue

The server will restart automatically every time the builds get updated.

Project Structure

Monorepo

We use monorepo to manage multiple packages

packages
  slidev/          - main package entry, holds the code on Node.js side
  client/          - main frontend app
  parser/          - parser for Slidev's extended Markdown format
  create-app/      - scripts and template for `npm init slidev`
  create-theme/    - scripts and template for `npm init slidev-theme`
  theme-*/         - official themes

Code Style

Don't worry about the code style as long as you install the dev dependencies. Git hooks will format and fix them for you on committing.

Thanks

Thank you again for being interested in this project! You are awesome!