* fix: split labels in kanban board
* chore: incresaed labels max render and moved labels to end of properties
chore: refactored label render component
* fix: smoother drag scrolling
* fix: refactoring out common fns
* fix: moved to mouse events instead of drag
* fix: improving the drag preview
* fix: added better selection logic
* fix: drag handle new way almost working
* fix: drag-handle old behaviour with better scrolling
* fix: remove experiments
* fix: better scroll thresholds
* fix: transition to drop cursor added
* fix: drag handling speed
* fix: cleaning up listeners
* fix: common out selection and dragging logic
* fix: scroll threshold logic fixed
* fix: added magnification properly and also moving around the zoomed image
* fix: zoom via trackpad pinch
* fix: update imports
* fix: initial magnification is reset
* chore: added fields in issue_version and profile tables and created a new sticky table
* chore: removed point in issue version
* chore: add imports in init
* chore: added sync jobs for issue_version and issue_description_version
* chore: removed logs
* chore: updated logginh
---------
Co-authored-by: sainath <sainath@sainaths-MacBook-Pro.local>
* chore: added fields in issue_version and profile tables and created a new sticky table
* chore: removed point in issue version
* chore: add imports in init
---------
Co-authored-by: sainath <sainath@sainaths-MacBook-Pro.local>
* chore: Add logger as a package
* chore: Add logger package for node server side apps
* remove plane logger import in web
* resolve pr reviews and add client logger with readme update
* fix: transformation and added middleware for logging requests
* chore: update readme
* fix: env configurable max file size
---------
Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
* feat: add navigation dropdown component
* chore: enhance title/ description loader and componenet modularity
* chore: issue store filter update
* chore: added few icons to ui package
* chore: improvements for tabs componenet
* chore: enhance sidebar modularity
* chore: update issue and router store to add support for additional issue layouts
* chore: enhanced cycle componenets modularity
* feat: added project grouping header for cycles list
* chore: enhanced project dropdown componenet by adding multiple selection functionality
* chore: enhanced rich text editor modularity by taking members ids as props for mentions
* chore: added functionality to filter disabled layouts in issue-layout dropdown
* chore: added support to pass project ids as props in project card list
* feat: multi select project modal
* chore: seperate out project componenet for reusability
* chore: command pallete store improvements
* fix: build errors
* fix: refactoring
* fix: site ssr implementation
* chore: fixed auto reload on file change in sites
* chore: updated constant imports and globalised powerBy component
* chore: resolved lint and updated the env
---------
Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
* fix: add lock unlock archive restore realtime sync
* fix: show only after editor loads
* fix: added strong types
* fix: live events fixed
* fix: remove unused vars and logs
* fix: converted objects to enum
* fix: error handling and removing the events in read only mode
* fix: added check to only update if the image aspect ratio is not present already
* fix: imports
* fix: props order
* revert: no need of these changes anymore
* fix: updated type names
* fix: order of things
* fix: fixed types and renamed variables
* fix: better typing for the real time updates
* fix: trying multiplexing our socket connection
* fix: multiplexing socket connection in read only editor as well
* fix: remove single socket logic
* fix: fixing the cleanup deps for the provider and localprovider
* fix: add a better data structure for managing events
* chore: refactored realtime events into hooks
* feat: fetch page meta while focusing tabs
* fix: cycling through items on slash command item in down arrow
* fix: better naming convention for realtime events
* fix: simplified localprovider initialization and cleaning
* fix: types from ui
* fix: abstracted away from exposing the provider directly
* fix: coderabbit suggestions
* regression: pass user in dependency array
* fix: removed page action api calls by the other users the document is synced with
* chore: removed unused imports
* chore: local storage helper hook added to package
* chore: tabs global component added
* chore: collapsible button improvement
* chore: linear progress indicator improvement
* chore: fill icon set added to package
* fix timeline scroll to the right in some cases
(cherry picked from commit 17043a6c7f)
* add get position based on Date
(cherry picked from commit 2fbe22d689)
* Add sticky block name to enable it to be read throughout the block regardless of scroll position
(cherry picked from commit 447af2e05a)
* Enable blocks to have a single date on the block charts
(cherry picked from commit cb055d566b)
* revert back date-range changes
* change gradient of half blocks on Timeline
* Add instance Id for Timeline Sidebar dragging to avoid enabling dropping of other drag instances
* fix timeline scrolling height
* fix estimates sorting in Front end side
* change estimate sorting keys
* - Fix estimate sorting when local db is enabled
- Fix a bug with with sorting on special fields on spreadsheet layout
- Cleanup logging
* Add logic for order by based on layout for special cases of no load
---------
Co-authored-by: Satish Gandham <satish.iitg@gmail.com>
* Add fallback when db initialization fails
* add checks for instance.exec
* chore: convert issue boolean fields to actual boolean value.
* change instance exec code
* sync issue to local db when inbox issue is accepted and draft issue is moved to project
* chore: added project and workspace keys
---------
Co-authored-by: rahulramesha <rahulramesham@gmail.com>
Co-authored-by: Prateek Shourya <prateekshourya29@gmail.com>
Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
* fix relation creation and removal for Issue relations
* fix Scrolling to block when the block is beyond current chart's limits
* fix dark mode for timeline layout
* use a hook to get the current relations available in the environment, instead of directly importing it
* Update relation activity for all the relations
* - Fix transaction within transaction issue
- Close DB handles on reload
- Fix GET_ISSUES tracking
* Cleanup stray code
* Fix lint error
* Possible fix for NoModificationAllowedError
* chore: updated live server auth cookies handling
* chore: update token parsing logic
* fix: types and better logical seperation between the existing two tokens
* fix: better fallback to use request headers for cookies
---------
Co-authored-by: Palanikannan M <akashmalinimurugu@gmail.com>
* improve auto scroller logic
* fix drag indicator visibility on for blocks
* modify timeline store logic and improve timeline scrolling logic
* fix width of block while dragging with left handle
* fix block arrow direction while block is out of viewport
* fix layout switching when filter is not yet completely fetched
* add layout in issue filter params
* Handle cases when DB intilization failed
* chore: permission layer and updated issues v1 query from workspace to project level
* - Switch to using wa-sqlite instead of sqlite-wasm
* Code cleanup and fix indexes
* Add missing files
* - Import only required functions from sentry
- Wait till all the tables are created
* Skip workspace sync if one is already in progress.
* Sync workspace without using transaction
* Minor cleanup
* Close DB connection before deleting files
Fix clear OPFS on safari
* Fix type issue
* Improve issue insert performance
* Refactor workspace sync
* Close the DB connection while switching workspaces
* Update web/core/local-db/worker/db.ts
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Worker cleanup and error handling
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Update web/core/local-db/worker/db.ts
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Update web/core/local-db/storage.sqlite.ts
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Update web/core/local-db/worker/db.ts
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Code cleanup
* Set default order by to created at and descending
* Wait for transactions to complete.
---------
Co-authored-by: rahulramesha <rahulramesham@gmail.com>
Co-authored-by: gurusainath <gurusainath007@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* regression: image aspect ratio fix
* fix: name of variables changed for clarity
* fix: restore only on error
* fix: restore image by handling it inside the image component
* fix: image restoration fixed and aspect ratio added to old images to stop updates on load
* fix: added back restoring logic for public images
* fix: add conditions
* fix: image attributes types
* fix: return for old images
* fix: remove passive false
* fix: eslint fixes
* fix: stopping infinite loading scenarios while restoring from error
* [WEB-2577] improvement: use common create/update issue modal for accepting intake issues for consistency
* fix: lint errors.
* chore: minor UX copy fix.
* chore: minor indentation fix.
* fix: module date validation while generating the chart distribution
* chore: indentation fix
---------
Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
* fix: drag handle scrolling fixed
* fix: closest scrollable parent found and scrolled
* fix: removed overflow auto from framerenderer
* fix: make dragging dynamic and smoother
* feat: add text color and highlight options to pages
* style: rich text editor floating toolbar
* chore: remove unused function
* refactor: slash command components
* chore: move default text and background options to the top
* fix: sections filtering logic
* fix: drag handle scrolling fixed
* fix: closest scrollable parent found and scrolled
* fix: removed overflow auto from framerenderer
* fix: make dragging dynamic and smoother
* fix: image deletion on submit fixed in comments
* fix: cleareditor added to read only editor
* fix: image component double drop fixed
* feat: multiple image selection and uploading
* fix: click event on read only instance
* fix: made things async
* fix: prevented default behaviour
* fix: removed extra dep and cleaned up logic
* fix kanban view localStorage
* add functionality for list view and add type for kanban function
* add comment in issue-filter-helper store
* improved code quality
* add comment for clarity
* use better variable names
* use useCallback hook and change variable name
* made suggested changes
* - Handle single quotes in load workspace queries
- Add IS null where condition in query utils
* Fix description_html being lost
* Change secondary order to sequence_id
* Fix update persistence layer
* Add instrumentation
* - Fallback to server incase of any error
* fix: added aspect ratio to resizing
* fix: image loading
* fix: image uploading and adding only necessary keys to listen to
* fix: image aspect ratio maintainance done
* fix: loading of images with uploads
* fix: custom image extension loading fixed
* fix: refactored all the upload logic
* fix: focus detection for editor fixed
* fix: drop images and inserting images cleaned up
* fix: cursor focus after image node insertion and multi drop/paste range error fix
* fix: image types fixed
* fix: remove old images' upload code and cleaning up the code
* fix: imports
* fix: this reference in the plugin
* fix: added file validation
* fix: added error handling while reading files
* fix: prevent old data to be updated in updateAttributes
* fix: props types for node and image block
* fix: remove unnecessary dependency
* fix: seperated display message logic from ui
* chore: added comments to better explain the loading states
* fix: added getPos to deps
* fix: remove click event on failed to load state
* fix: css for error and selected state
* [WEB-2568] chore: minor improvements related to issue identifier and issue modal.
* fix: error handling for session recorder script.
* chore: minor improvement
* - Handle single quotes in load workspace queries
- Add IS null where condition in query utils
* Fix description_html being lost
* Change secondary order to sequence_id
* Fix update persistence layer
* Fix issue types filter
Fix none filter
* add local cache toggle in help section
* remove toggle from user settings
* Reset storage class on disabling local
---------
Co-authored-by: rahulramesha <rahulramesham@gmail.com>
* - Handle single quotes in load workspace queries
- Add IS null where condition in query utils
* Fix description_html being lost
* Change secondary order to sequence_id
* Fix update persistence layer
* Fix sync of local updates
* Escape single quotes!!
* Fix last updated time query
* Move console.logs out
* Fix issue title not rendering line breaks when disabled
* Add a todo
* Fix build errors
* Disable local
* use common getIssues from issue service instead of multiple different services for modules and cycles
* Use SQLite to store issues locally and load issues from it.
* Fix incorrect total count and filtering on assignees.
* enable parallel API calls
* use common getIssues from issue service instead of multiple different services for modules and cycles
* Use SQLite to store issues locally and load issues from it.
* Fix incorrect total count and filtering on assignees.
* enable parallel API calls
* chore: deleted issue list
* - Handle local mutations
- Implement getting the updates
- Use SWR to update/sync data
* Wait for sync to complete in get issues
* Fix build errors
* Fix build issue
* - Sync updates to local-db
- Fallback to server when the local data is loading
- Wait when the updates are being fetched
* Add issues in batches
* Disable skeleton loaders for first 10 issues
* Load issues in bulk
* working version of sql lite with grouped issues
* Use window queries for group by
* - Fix sort by date fields
- Fix the total count
* - Fix grouping by created by
- Fix order by and limit
* fix pagination
* Fix sorting on issue priority
* - Add secondary sort order
- Fix group by priority
* chore: added timestamp filter for deleted issues
* - Extract local DB into its own class
- Implement sorting by label names
* Implement subgroup by
* sub group by changes
* Refactor query constructor
* Insert or update issues instead of directly adding them.
* Segregated queries. Not working though!!
* - Get filtered issues and then group them.
- Cleanup code.
- Implement order by labels.
* Fix build issues
* Remove debuggers
* remove loaders while changing sorting or applying filters
* fix loader while clearing all filters
* Fix issue with project being synced twice
* Improve project sync
* Optimize the queries
* Make create dummy data more realistic
* dev: added total pages in the global paginator
* chore: updated total_paged count
* chore: added state_group in the issues pagination
* chore: removed deleted_at from the issue pagination payload
* chore: replaced state_group with state__group
* Integrate new getIssues API, and fix sync issues bug.
* Fix issue with SWR running twice in workspace wrapper
* Fix DB initialization called when opening project for the first time.
* Add all the tables required for sorting
* Exclude description from getIssues
* Add getIssue function.
* Add only selected fields to get query.
* Fix the count query
* Minor query optimization when no joins are required.
* fetch issue description from local db
* clear local db on signout
* Correct dummy data creation
* Fix sort by assignee
* sync to local changes
* chore: added archived issues in the deleted endpoint
* Sync deletes to local db.
* - Add missing indexes for tables used in sorting in spreadsheet layout.
- Add options table
* Make fallback optional in getOption
* Kanban column virtualization
* persist project sync readiness to sqlite and use that as the source of truth for the project issues to be ready
* fix build errors
* Fix calendar view
* fetch slimed down version of modules in project wrapper
* fetch toned down modules and then fetch complete modules
* Fix multi value order by in spread sheet layout
* Fix sort by
* Fix the query when ordering by multi field names
* Remove unused import
* Fix sort by multi value fields
* Format queries and fix order by
* fix order by for multi issue
* fix loaders for spreadsheet
* Fallback to manual order whn moving away from spreadsheet layout
* fix minor bug
* Move fix for order_by when switching from spreadsheet layout to translateQueryParams
* fix default rendering of kanban groups
* Fix none priority being saved as null
* Remove debugger statement
* Fix issue load
* chore: updated isue paginated query from to
* Fix sub issues and start and target date filters
* Fix active and backlog filter
* Add default order by
* Update the Query param to match with backend.
* local sqlite db versioning
* When window is hidden, do not perform any db versioning
* fix error handling and fall back to server when database errors out
* Add ability to disable local db cache
* remove db version check from getIssues function
* change db version to number and remove workspaceInitPromise in storage.sqlite
* - Sync the entire workspace in the background
- Add get sub issue method with distribution
* Make changes to get issues for sync to match backend.
* chore: handled workspace and project in v2 paginted issues
* disable issue description and title until fetched from server
* sync issues post bulk operations
* fix server error
* fix front end build
* Remove full workspace sync
* - Remove the toast message on sync.
- Update the disable local message.
* Add Hardcoded constant to disable the local db caching
* fix lint errors
* Fix order by in grouping
* update yarn lock
* fix build
* fix plane-web imports
* address review comments
---------
Co-authored-by: rahulramesha <rahulramesham@gmail.com>
Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
Co-authored-by: gurusainath <gurusainath007@gmail.com>
* use common getIssues from issue service instead of multiple different services for modules and cycles
* add group by to server constants
* change issue detail's overview's is loading logic to the loader from the store
* add extra method in local storage
* Kanban render 10 issues by default per column
* fix height in group virtualization
* remove debounced code for Kanban fetching more issues per column
* fix lint errors
* Updated control block to cover the whole element
* Updated the control link to cover the whole issues and relation blocks
* updated word wrap in notifications
* Reverted break words as its a different issue.
* fixed only for spreadsheet
* change package for global change
* made global and ad hoc changes
* fix border and z-index for intake and notifications header
* chore: add fallback for the live server
* fix: update provider document after patch request
* chore: make the health check call only on connection fail
* chore: update debounce interval
* refactor: remove useSwr call for healtch check
* fix: pages fallback init
* make front end changes for priority orderby reversal
* chore: handled priority ordering in issues pagination
---------
Co-authored-by: gurusainath <gurusainath007@gmail.com>
* fix: image resize fixed for initial render
* fix: working image resize with mousemove handler only inside the editor
* fix: unnecessary calc
* fix: setting state to true
* changes for list and kanban
* passing values for list and kanban
* spreadsheet changes
* fix use different props for different stylings
* fix z index
* added functionality to list and grid
* fixed logic for archived module
* fixed logic for list view
* improved logic and fixed linting issues
* improved variable names
* fixed the logic
* made required css changes
* replicated same for space component
* fixed variable name
* replicated for space
* better variable name
* improved the css
* replicated for space
* fix: parse redis url to get hostname and port
* fix: redis url accepted for connection
* chore: add redis url to example env
* fix: let users add redis port and host incase redis url is not present
* chore: create url from host and port variables
* fix: return empty string incase of no config
* fix: remove 'Add Project' button from archives route and remove it from the dropdown in header
* Improved Code Logic
* Fixed Clear All Button and UI Fixes
* chore: project page version
* feat: page version history implemented
* chore: hide save button when version history overlay is active
* refactor: updated navigation logic
* chore: added error states
---------
Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
* fix: adding secret key variable in newline
adding secret key variable in newline in api server env file and setting default value for `HARD_DELETE_AFTER_DAYS`
* added newline at EOF
* chore: components restructuring and minor UI improvements.
* chore: minor UI improvements fro icons and member dropdown.
* chore: update issue identifier.
* chore: rename `Issue Extra Property` to `Issue Additional Property`
* chore: fix popovers placement issue on components with overflow.
* chore: add `scrollbar-xs`
* chore: add `xs` size for input and textarea components.
* chore: update `sortable` to return back `movedItem` in the onChange callback.
* chore: minor UI adjustments for radio-select.
* chore: update outside click delay to 1ms.
@@ -4,7 +4,7 @@ Thank you for showing an interest in contributing to Plane! All kinds of contrib
## Submitting an issue
Before submitting a new issue, please search the [issues](https://github.com/makeplane/plane/issues) tab. Maybe an issue or discussion already exists and might inform you of workarounds. Otherwise, you can give new informplaneation.
Before submitting a new issue, please search the [issues](https://github.com/makeplane/plane/issues) tab. Maybe an issue or discussion already exists and might inform you of workarounds. Otherwise, you can give new information.
While we want to fix all the [issues](https://github.com/makeplane/plane/issues), before fixing a bug we need to be able to reproduce and confirm it. Please provide us with a minimal reproduction scenario using a repository or [Gist](https://gist.github.com/). Having a live, reproducible scenario gives us the information without asking questions back & forth with additional questions like:
<palign="center"><b>Open-source project management that unlocks customer value</b></p>
<h1align="center"><b>Plane</b></h1>
<palign="center">
<ahref="https://discord.com/invite/A92xrEGCge">
@@ -44,79 +42,85 @@ Meet [Plane](https://dub.sh/plane-website-readme), an open-source project manage
> Plane is evolving every day. Your suggestions, ideas, and reported bugs help us immensely. Do not hesitate to join in the conversation on [Discord](https://discord.com/invite/A92xrEGCge) or raise a GitHub issue. We read everything and respond to most.
## ⚡ Installation
## 🚀 Installation
The easiest way to get started with Plane is by creating a [Plane Cloud](https://app.plane.so) account.
Getting started with Plane is simple. Choose the setup that works best for you:
If you would like to self-host Plane, please see our [deployment guide](https://docs.plane.so/docker-compose).
- **Plane Cloud**
Sign up for a free account on [Plane Cloud](https://app.plane.so)—it's the fastest way to get up and running without worrying about infrastructure.
- **Self-host Plane**
Prefer full control over your data and infrastructure? Install and run Plane on your own servers. Follow our detailed [deployment guides](https://developers.plane.so/self-hosting/overview) to get started.
`Instance admins` can configure instance settings with [God-mode](https://docs.plane.so/instance-admin).
`Instance admins` can manage and customize settings using [Godmode](https://developers.plane.so/self-hosting/govern/instance-admin).
## 🚀 Features
## 🌟 Features
- **Issues**: Quickly create issues and add details using a powerful rich text editor that supports file uploads. Add sub-properties and references to problems for better organization and tracking.
- **Issues**
Efficiently create and manage tasks with a robust rich text editor that supports file uploads. Enhance organization and tracking by adding sub-properties and referencing related issues.
- **Cycles**:
Keep up your team's momentum with Cycles. Gain insights into your project's progress with burn-down charts and other valuable features.
- **Cycles**
Maintain your team’s momentum with Cycles. Track progress effortlessly using burn-down charts and other insightful tools.
- **Modules**: Break down your large projects into smaller, more manageable modules. Assign modules between teams to track and plan your project's progress easily.
- **Modules**
Simplify complex projects by dividing them into smaller, manageable modules.
- **Views**: Create custom filters to display only the issues that matter to you. Save and share your filters in just a few clicks.
- **Views**
Customize your workflow by creating filters to display only the most relevant issues. Save and share these views with ease.
- **Pages**: Plane pages, equipped with AI and a rich text editor, let you jot down your thoughts on the fly. Format your text, upload images, hyperlink, or sync your existing ideas into an actionable item or issue.
- **Pages**
Capture and organize ideas using Plane Pages, complete with AI capabilities and a rich text editor. Format text, insert images, add hyperlinks, or convert your notes into actionable items.
- **Analytics**: Get insights into all your Plane data in real-time. Visualize issue data to spot trends, remove blockers, and progress your work.
- **Analytics**
Access real-time insights across all your Plane data. Visualize trends, remove blockers, and keep your projects moving forward.
- **Drive** (_coming soon_): The drive helps you share documents, images, videos, or any other files that make sense to you or your team and align on the problem/solution.
## 🛠️ Quick start for contributors
> Development system must have docker engine installed and running.
## 🛠️ Local development
Setting up local environment is extremely easy and straight forward. Follow the below step and you will be ready to contribute -
### Pre-requisites
- Ensure Docker Engine is installed and running.
1. Clone the code locally using:
### Development setup
Setting up your local environment is simple and straightforward. Follow these steps to get started:
1. Clone the repository:
```
git clone https://github.com/makeplane/plane.git
```
2. Switch to the code folder:
2. Navigate to the project folder:
```
cd plane
```
3. Create your feature or fix branch you plan to work on using:
3. Create a new branch for your feature or fix:
```
git checkout -b <feature-branch-name>
```
4. Open terminal and run:
4. Run the setup script in the terminal:
```
./setup.sh
```
5. Open the code on VSCode or similar equivalent IDE.
6. Review the `.env` files available in various folders.
Visit [Environment Setup](./ENV_SETUP.md) to know about various environment variables used in system.
7. Run the docker command to initiate services:
5. Open the project in an IDE such as VSCode.
6. Review the `.env` files in the relevant folders. Refer to [Environment Setup](./ENV_SETUP.md) for details on the environment variables used.
7. Start the services using Docker:
```
docker compose -f docker-compose-local.yml up -d
```
You are ready to make changes to the code. Do not forget to refresh the browser (in case it does not auto-reload).
That’s it! You’re all set to begin coding. Remember to refresh your browser if changes don’t auto-reload. Happy contributing! 🎉
Thats it!
## ❤️ Community
The Plane community can be found on [GitHub Discussions](https://github.com/orgs/makeplane/discussions), and our [Discord server](https://discord.com/invite/A92xrEGCge). Our [Code of conduct](https://github.com/makeplane/plane/blob/master/CODE_OF_CONDUCT.md) applies to all Plane community chanels.
Ask questions, report bugs, join discussions, voice ideas, make feature requests, or share your projects.
Explore Plane's [product documentation](https://docs.plane.so/) and [developer documentation](https://developers.plane.so/) to learn about features, setup, and usage.
If you believe you have found a security vulnerability in Plane, we encourage you to responsibly disclose this and not open a public issue. We will investigate all legitimate reports.
## ❤️ Community
Email squawk@plane.so to disclose any security vulnerabilities.
Join the Plane community on [GitHub Discussions](https://github.com/orgs/makeplane/discussions) and our [Discord server](https://discord.com/invite/A92xrEGCge). We follow a [Code of conduct](https://github.com/makeplane/plane/blob/master/CODE_OF_CONDUCT.md) in all our community channels.
## ❤️ Contribute
Feel free to ask questions, report bugs, participate in discussions, share ideas, request features, or showcase your projects. We’d love to hear from you!
There are many ways to contribute to Plane, including:
## 🛡️ Security
- Submitting [bugs](https://github.com/makeplane/plane/issues/new?assignees=srinivaspendem%2Cpushya22&labels=%F0%9F%90%9Bbug&projects=&template=--bug-report.yaml&title=%5Bbug%5D%3A+) and [feature requests](https://github.com/makeplane/plane/issues/new?assignees=srinivaspendem%2Cpushya22&labels=%E2%9C%A8feature&projects=&template=--feature-request.yaml&title=%5Bfeature%5D%3A+) for various components.
- Reviewing [the documentation](https://docs.plane.so/) and submitting [pull requests](https://github.com/makeplane/plane), from fixing typos to adding new features.
- Speaking or writing about Plane or any other ecosystem integration and [letting us know](https://discord.com/invite/A92xrEGCge)!
- Upvoting [popular feature requests](https://github.com/makeplane/plane/issues) to show your support.
If you discover a security vulnerability in Plane, please report it responsibly instead of opening a public issue. We take all legitimate reports seriously and will investigate them promptly. See [Security policy](https://github.com/makeplane/plane/blob/master/SECURITY.md) for more info.
To disclose any security issues, please email us at security@plane.so.
## 🤝 Contributing
There are many ways you can contribute to Plane:
- Report [bugs](https://github.com/makeplane/plane/issues/new?assignees=srinivaspendem%2Cpushya22&labels=%F0%9F%90%9Bbug&projects=&template=--bug-report.yaml&title=%5Bbug%5D%3A+) or submit [feature requests](https://github.com/makeplane/plane/issues/new?assignees=srinivaspendem%2Cpushya22&labels=%E2%9C%A8feature&projects=&template=--feature-request.yaml&title=%5Bfeature%5D%3A+).
- Review the [documentation](https://docs.plane.so/) and submit [pull requests](https://github.com/makeplane/docs) to improve it—whether it's fixing typos or adding new content.
- Talk or write about Plane or any other ecosystem integration and [let us know](https://discord.com/invite/A92xrEGCge)!
- Show your support by upvoting [popular feature requests](https://github.com/makeplane/plane/issues).
Please read [CONTRIBUTING.md](https://github.com/makeplane/plane/blob/master/CONTRIBUTING.md) for details on the process for submitting pull requests to us.
This document outlines the security protocols and vulnerability reporting guidelines for the Plane project. Ensuring the security of our systems is a top priority, and while we work diligently to maintain robust protection, vulnerabilities may still occur. We highly value the community’s role in identifying and reporting security concerns to uphold the integrity of our systems and safeguard our users.
This document outlines security procedures and vulnerabilities reporting for the Plane project.
## Reporting a vulnerability
If you have identified a security vulnerability, submit your findings to [security@plane.so](mailto:security@plane.so).
Ensure your report includes all relevant information needed for us to reproduce and assess the issue. Include the IP address or URL of the affected system.
At Plane, we safeguarding the security of our systems with top priority. Despite our efforts, vulnerabilities may still exist. We greatly appreciate your assistance in identifying and reporting any such vulnerabilities to help us maintain the integrity of our systems and protect our clients.
To ensure a responsible and effective disclosure process, please adhere to the following:
To report a security vulnerability, please email us directly at security@plane.so with a detailed description of the vulnerability and steps to reproduce it. Please refrain from disclosing the vulnerability publicly until we have had an opportunity to review and address it.
- Maintain confidentiality and refrain from publicly disclosing the vulnerability until we have had the opportunity to investigate and address the issue.
- Refrain from running automated vulnerability scans on our infrastructure or dashboard without prior consent. Contact us to set up a sandbox environment if necessary.
- Do not exploit any discovered vulnerabilities for malicious purposes, such as accessing or altering user data.
- Do not engage in physical security attacks, social engineering, distributed denial of service (DDoS) attacks, spam campaigns, or attacks on third-party applications as part of your vulnerability testing.
## Out of Scope Vulnerabilities
## Out of scope
While we appreciate all efforts to assist in improving our security, please note that the following types of vulnerabilities are considered out of scope:
We appreciate your help in identifying vulnerabilities. However, please note that the following types of vulnerabilities are considered out of scope:
- Vulnerabilities requiring man-in-the-middle (MITM) attacks or physical access to a user’s device.
- Content spoofing or text injection issues without a clear attack vector or the ability to modify HTML/CSS.
- Issues related to email spoofing.
- Missing DNSSEC, CAA, or CSP headers.
- Absence of secure or HTTP-only flags on non-sensitive cookies.
- Attacks requiring MITM or physical access to a user's device.
- Content spoofing and text injection issues without demonstrating an attack vector or ability to modify HTML/CSS.
- Email spoofing.
- Missing DNSSEC, CAA, CSP headers.
- Lack of Secure or HTTP only flag on non-sensitive cookies.
## Our commitment
## Reporting Process
At Plane, we are committed to maintaining transparent and collaborative communication throughout the vulnerability resolution process. Here's what you can expect from us:
If you discover a vulnerability, please adhere to the following reporting process:
- **Response Time** <br/>
We will acknowledge receipt of your vulnerability report within three business days and provide an estimated timeline for resolution.
- **Legal Protection** <br/>
We will not initiate legal action against you for reporting vulnerabilities, provided you adhere to the reporting guidelines.
- **Confidentiality** <br/>
Your report will be treated with confidentiality. We will not disclose your personal information to third parties without your consent.
- **Recognition** <br/>
With your permission, we are happy to publicly acknowledge your contribution to improving our security once the issue is resolved.
- **Timely Resolution** <br/>
We are committed to working closely with you throughout the resolution process, providing timely updates as necessary. Our goal is to address all reported vulnerabilities swiftly, and we will actively engage with you to coordinate a responsible disclosure once the issue is fully resolved.
1. Email your findings to security@plane.so.
2. Refrain from running automated scanners on our infrastructure or dashboard without prior consent. Contact us to set up a sandbox environment if necessary.
3. Do not exploit the vulnerability for malicious purposes, such as downloading excessive data or altering user data.
4. Maintain confidentiality and refrain from disclosing the vulnerability until it has been resolved.
5. Avoid using physical security attacks, social engineering, distributed denial of service, spam, or third-party applications.
When reporting a vulnerability, please provide sufficient information to allow us to reproduce and address the issue promptly. Include the IP address or URL of the affected system, along with a detailed description of the vulnerability.
## Our Commitment
We are committed to promptly addressing reported vulnerabilities and maintaining open communication throughout the resolution process. Here's what you can expect from us:
- **Response Time:** We will acknowledge receipt of your report within three business days and provide an expected resolution date.
- **Legal Protection:** We will not pursue legal action against you for reporting vulnerabilities, provided you adhere to the reporting guidelines.
- **Confidentiality:** Your report will be treated with strict confidentiality. We will not disclose your personal information to third parties without your consent.
- **Progress Updates:** We will keep you informed of our progress in resolving the reported vulnerability.
- **Recognition:** With your permission, we will publicly acknowledge you as the discoverer of the vulnerability.
- **Timely Resolution:** We strive to resolve all reported vulnerabilities promptly and will actively participate in the publication process once the issue is resolved.
We appreciate your cooperation in helping us maintain the security of our systems and protecting our clients. Thank you for your contributions to our security efforts.
We appreciate your help in ensuring the security of our platform. Your contributions are crucial to protecting our users and maintaining a secure environment. Thank you for working with us to keep Plane safe.
@@ -30,10 +30,5 @@ class StateSerializer(BaseSerializer):
classStateLiteSerializer(BaseSerializer):
classMeta:
model=State
fields=[
"id",
"name",
"color",
"group",
]
fields=["id","name","color","group"]
read_only_fields=fields
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.