An mirror from our Presences repository. https://github.com/PreMiD/Presences

Florian Metz 17f1a51c51 feat: add StatusDisplayType enum and update PresenceOptions with new fields (#9791) 1 settimana fa
.github a66aa5ebea Add tape recordings for creating and developing activities 1 settimana fa
.resources b7f56a2dee docs: change presence to activity (#9302) 5 mesi fa
.vscode 239a48fad8 feat: modernize repo (#9184) 5 mesi fa
@types 17f1a51c51 feat: add StatusDisplayType enum and update PresenceOptions with new fields (#9791) 1 settimana fa
cli 4e6fe909b2 feat(pmd): update schema version (#9717) 1 mese fa
docs 8aa40a4a45 chore: update stuff 1 settimana fa
premid 1d6f0d478b feat: add deprecation rule (#9278) 5 mesi fa
websites d422523352 chore: update assets 2 settimane fa
.gitattributes 01ef2cf052 💚 Fixing CI 5 anni fa
.gitignore 239a48fad8 feat: modernize repo (#9184) 5 mesi fa
LICENSE 90aa44276d 🔄 Synced local 'LICENSE' with remote 'LICENSE' 3 anni fa
README.md 22d6c3f895 chore: update join-discord badge (#9661) 1 mese fa
commitlint.config.js 239a48fad8 feat: modernize repo (#9184) 5 mesi fa
crowdin.yml 239a48fad8 feat: modernize repo (#9184) 5 mesi fa
eslint.config.mjs 1d6f0d478b feat: add deprecation rule (#9278) 5 mesi fa
package-lock.json 4e6fe909b2 feat(pmd): update schema version (#9717) 1 mese fa
package.json 06c7d60107 chore(deps): update dependencies 2 mesi fa
tsconfig.base.json 239a48fad8 feat: modernize repo (#9184) 5 mesi fa

README.md

PreMiD Activities

This repository contains the source code of all Activities that are available in PreMiD's Store. Activities enhance your Discord presence by showing what you're doing on various websites.


Getting Started

Want to create your own Activity or modify an existing one? Great! Follow these simple steps:

  1. Set up your development environment

    • Install Node.js (version 20 or higher)
    • Clone this repository: git clone https://github.com/PreMiD/Activities.git
    • Navigate to the project directory: cd Activities
    • Install dependencies: npm install
  2. Learn the basics

    • Read our documentation to understand how Activities work
    • Browse through existing Activities to see examples and best practices
  3. Start creating/editing

    • Use our CLI tool as described below to create and develop your Activity

CLI Commands

The repository includes a command-line tool (pmd) to help you create and develop Activities easily.

Creating a New Activity

To create a new Activity with all the necessary files and structure:

npx pmd new my-activity-name

This will guide you through a setup process, asking for basic information to generate the Activity structure.

Developing an Activity

Once you've created an Activity, you can develop it with live-reload functionality:

npx pmd dev my-activity-name

This command will:

  • Start a development server
  • Watch for changes in your Activity files
  • Automatically rebuild when you make changes
  • Validate your Activity against PreMiD standards

Useful options:

  • --validate: Run additional validation checks for metadata, images, etc.

Testing Your Activity

To test your Activity:

  1. Install the PreMiD Extension in your browser
  2. Enable "Activity Developer Mode" in the extension settings:
    • Click on the PreMiD extension icon in your browser
    • Go to settings (⚙️)
    • Enable "Activity Developer Mode"
  3. Run the development command: bash npx pmd dev my-activity-name
  4. The pmd tool will automatically send your Activity to the extension while in development mode
  5. Navigate to the website your Activity supports to see it in action
  6. Changes you make will be automatically picked up and sent to the extension

This development workflow allows you to see your changes in real-time without having to manually load the Activity each time you make a change.

Submitting Your Activity

When your Activity is ready:

  1. Make sure it passes all validation checks
  2. Create a Pull Request to this repository
  3. Wait for a review from our maintainers

Committing

This repository strictly enforces the use of commitlint. For more information read the Commit Convention guide