Skip to content

Latest commit

 

History

History
82 lines (46 loc) · 3.33 KB

dev.md

File metadata and controls

82 lines (46 loc) · 3.33 KB

Environment

The root directory is a typical multi-page app of Vite with Svelte JavaScript project.

The xcode directory is the root of the Xcode project where the Safari extension app is built.

For other directory structure instructions, please refer to structure.md.

Recommended code editor

Visual Studio Code with extensions: /.vscode/extensions.json

Template

The project is currently based on template-svelte from create-vite.

Additional reference templates are from create-svelte.

Reviewing the template will help you understand the composition of the project.

Requirement

Dev

  • npm install 1
  • npm run dev 1

Build

Note

Before building the app with Xcode make sure you create the .dev.xcconfig files below and fill in your Developer Team ID. Otherwise App groups related functions will not work properly.

  • npm run build:mac 12
  • cd ./xcode
  • xcodebuild -scheme Mac 123 or build with Xcode App

Xcode

Please note that a developer account is required, which can be a free Apple Account that has agreed to the Apple Developer Agreement. This is required to obtain a Team ID and use the App groups capability.

Configurations

The Xcode project contains several configurations, which have independent xcconfig configuration files, and can run on your local at the same time without conflicts.

  • Vite: for vite real-time development.

  • Debug: for development and debugging.

  • Release: for building and distributing.

xcconfig

All xcconfig files are in the /xcode/xcconfig/ directory. Each .xcconfig file can be overridden by .dev.xcconfig in the same path, they will be ignored by git, so you can override any build settings locally.

For example, you can create an Userscripts-Debug.dev.xcconfig file to override Userscripts-Debug.xcconfig and fill in your own developer account Team ID there:

Userscripts-Debug.dev.xcconfig

DEVELOPMENT_TEAM = XXXXXXXXXX

Note that all existing .xcconfig files already include .dev.xcconfig files of the same name, so they will be applied automatically once you create them. You only need to fill in the setting items that need to be overridden or added.

Contribute

Contributing guide

About

Userscripts @ 2018-2024

Footnotes

  1. These commands can also be executed directly through the vscode tasks. Please refer to: /.vscode/tasks.json 2 3 4

  2. Select the corresponding target and platform to build. Please refer to: /package.json and xcode-schemes 2

  3. Local setup may be required. Please refer to: Building from the Command Line with Xcode FAQ