Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Planer CI

on:
workflow_dispatch:
push:
branches: [develop, main]
pull_request:
branches: [develop, main]

permissions:
contents: read

concurrency:
group: planer-ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
quality:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
- run: npm ci
- run: npm run lint
- run: npm run build

windows-installer:
runs-on: windows-latest
needs: quality
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
- uses: dtolnay/rust-toolchain@stable
- run: npm ci
- run: npm run tauri build
- uses: actions/upload-artifact@v4
with:
name: Planer-0.1.0-Windows
path: |
src-tauri/target/release/bundle/nsis/*.exe
src-tauri/target/release/bundle/msi/*.msi
if-no-files-found: error
65 changes: 13 additions & 52 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,52 +1,13 @@
bin
build
classes
node_modules
.vscode/settings.json
src/main/webapp/WEB-INF/lib/animal-sniffer-annotations-*.jar
src/main/webapp/WEB-INF/lib/annotations-*.jar
src/main/webapp/WEB-INF/lib/api-common-*.jar
src/main/webapp/WEB-INF/lib/auto-value-annotations-*.jar
src/main/webapp/WEB-INF/lib/bcpkix-jdk15on-*.jar
src/main/webapp/WEB-INF/lib/bcprov-jdk15on-*.jar
src/main/webapp/WEB-INF/lib/checker-qual-*.jar
src/main/webapp/WEB-INF/lib/conscrypt-openjdk-uber-*.jar
src/main/webapp/WEB-INF/lib/error_prone_annotations-*.jar
src/main/webapp/WEB-INF/lib/failureaccess-*.jar
src/main/webapp/WEB-INF/lib/gax-*.jar
src/main/webapp/WEB-INF/lib/gax-grpc-*.jar
src/main/webapp/WEB-INF/lib/google-auth-library-credentials-*.jar
src/main/webapp/WEB-INF/lib/google-auth-library-oauth2-http-*.jar
src/main/webapp/WEB-INF/lib/google-cloud-secretmanager-*.jar
src/main/webapp/WEB-INF/lib/google-http-client-*.jar
src/main/webapp/WEB-INF/lib/google-http-client-gson-*.jar
src/main/webapp/WEB-INF/lib/grpc-alts-*.jar
src/main/webapp/WEB-INF/lib/grpc-api-*.jar
src/main/webapp/WEB-INF/lib/grpc-auth-*.jar
src/main/webapp/WEB-INF/lib/grpc-context-*.jar
src/main/webapp/WEB-INF/lib/grpc-core-*.jar
src/main/webapp/WEB-INF/lib/grpc-grpclb-*.jar
src/main/webapp/WEB-INF/lib/grpc-netty-shaded-*.jar
src/main/webapp/WEB-INF/lib/grpc-protobuf-*.jar
src/main/webapp/WEB-INF/lib/grpc-protobuf-lite-*.jar
src/main/webapp/WEB-INF/lib/grpc-services-*.jar
src/main/webapp/WEB-INF/lib/grpc-stub-*.jar
src/main/webapp/WEB-INF/lib/grpc-xds-*.jar
src/main/webapp/WEB-INF/lib/guava-*-jre.jar
src/main/webapp/WEB-INF/lib/httpcore-*.jar
src/main/webapp/WEB-INF/lib/j2objc-annotations-*.jar
src/main/webapp/WEB-INF/lib/javax.annotation-api-*.jar
src/main/webapp/WEB-INF/lib/jsr305-*.jar
src/main/webapp/WEB-INF/lib/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar
src/main/webapp/WEB-INF/lib/opencensus-api-*.jar
src/main/webapp/WEB-INF/lib/opencensus-contrib-http-util-*.jar
src/main/webapp/WEB-INF/lib/opencensus-proto-*.jar
src/main/webapp/WEB-INF/lib/perfmark-api-*.jar
src/main/webapp/WEB-INF/lib/proto-google-cloud-secretmanager-v1-*.jar
src/main/webapp/WEB-INF/lib/proto-google-cloud-secretmanager-v1beta1-*.jar
src/main/webapp/WEB-INF/lib/proto-google-common-protos-*.jar
src/main/webapp/WEB-INF/lib/proto-google-iam-v1-*.jar
src/main/webapp/WEB-INF/lib/protobuf-java-*.jar
src/main/webapp/WEB-INF/lib/protobuf-java-util-*.jar
src/main/webapp/WEB-INF/lib/re2j-*.jar
src/main/webapp/WEB-INF/lib/threetenbp-*.jar
node_modules/
dist/
*.local
.DS_Store
src-tauri/target/
src-tauri/gen/
*.log

# Generated mobile/store icon variants are not part of the Windows baseline.
src-tauri/icons/android/
src-tauri/icons/ios/
src-tauri/icons/Square*Logo.png
src-tauri/icons/StoreLogo.png
4 changes: 0 additions & 4 deletions .snyk

This file was deleted.

18 changes: 0 additions & 18 deletions .travis.yml

This file was deleted.

21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Changelog

All notable changes to Planer are documented here.

## [0.1.0] - 2026-08-08

### Added

- Tauri v2, React, TypeScript, and Vite application baseline.
- Local-first project launcher with recent projects.
- Multi-board workspace with create, rename, duplicate, and delete actions.
- Excalidraw canvas engine integrated into the Planer AppShell.
- Zustand project state and debounced IndexedDB autosave.
- Light and dark appearance support.
- `.planer` and `.excalidraw` JSON exports.
- Windows CI workflow for lint, web build, and Tauri installer artifacts.
- Manual CI dispatch, concurrency protection, and repository governance documents.

### Removed

- Legacy draw.io repository metadata and placeholder files.
13 changes: 0 additions & 13 deletions CITATION.cff

This file was deleted.

48 changes: 8 additions & 40 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,49 +1,17 @@
# Contributor Covenant Code of Conduct:
# Code of Conduct

## Our Pledge
## Our standard

In the interest of fostering an open and welcoming environment, we as contributors and maintainers aim to making participation in our project and our community a harassment-free experience for everyone.
Planer welcomes constructive participation. Contributors are expected to communicate professionally, critique ideas rather than people, respect differing experience and viewpoints, and keep technical discussions focused on improving the project.

## Our Standards

Examples of behavior that contributes to creating a positive environment include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or advances.
* Trolling, insulting/derogatory comments, and personal or political attacks.
* Public or private harassment, including focusing on individual developers when a topic should be broadly addressed.
* Publishing others' private information, such as a physical or electronic address, without explicit permission.
* Other conduct which could reasonably be considered inappropriate in a professional setting.
* Not respecting other people's time.
* Being impatient or rude.
* Pressing developers for priority fixes or ETAs.
* Guilting the developers into focusing on your issue(s).
* Ignoring that a request has been declined and repeating your point over and over .
* "X app has it, why don't you?"
* Repeatedly showing an inappropriate level of entitlement, asking for issue status, or bumping issues.

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
Unacceptable behavior includes harassment, discrimination, threats, deliberate disruption, publication of private information, or sustained personal attacks.

## Scope

This Code of Conduct applies to all JGraph projects and the draw.io google groups.

Project maintainers are not subject to this code.
This policy applies to repository issues, pull requests, reviews, discussions, and other spaces where a participant represents the Planer project.

## Attribution
## Enforcement

This Code of Conduct is adapted from the [Contributor-Covenant][homepage], version 1.4, available at [https://contributor-covenant.org/version/1/4][version]
Report conduct concerns privately to the repository owner through their GitHub profile. Reports will be reviewed in confidence. Project maintainers may edit or remove content, reject contributions, restrict participation, or ban participants when behavior conflicts with this policy.

[homepage]: https://contributor-covenant.org
[version]: https://contributor-covenant.org/version/1/4/
Enforcement decisions will consider context, severity, recurrence, and impact on the community and project.
Loading
Loading