Contribute to the DSpace Development Fund
The newly established DSpace Development Fund supports the development of new features prioritized by DSpace Governance. For a list of planned features see the fund wiki page.
Code Contribution Guidelines
- Code Contribution Guidelines - Provides details on our Code Approval processes and our DSpace code conventions! Before you get started on your project, make sure you understand our Code Contribution Guidelines!
Developing With Git/GitHub
The DSpace codebase is in GitHub:
- Backend/Java codebase: https://github.com/DSpace/DSpace
- DSpace 7 UI codebase: https://github.com/DSpace/dspace-angular
If you are new to Git or GitHub development, the following resources that may be of interest to you.
- DSpace Development with Git - Some hints/tips on DSpace Development with Git/GitHub
- Git Resources - Useful third-party resources/tutorials on Git or GitHub
Still want to use SVN locally, even though DSpace is on GitHub?
- GitHub does provide some basic SVN client support (e.g. checkout via SVN): https://github.com/blog/966-improved-subversion-client-support
- Or, you could obviously download the zipped up DSpace release packages and import them into your local SVN
Developing Environments (IDEs)
You are free to use whatever developer environment works for you. Here are some guides for setting up and using particular environments.
- IntelliJ IDEA
- IDE Integration - DSpace and IDEA (covers IDEA + maven + ant + tomcat).
- Eclipse (Instructions are outdated: Most of our active developers/committers tend to use either IDEA or NetBeans.)
- Docker Compose - A great way to get started quickly with DSpace development! Docker scripts can be found in the source code
- Any source editor
Also, if you are interested in using Git/Github for local DSpace development see this for hints/tips:
- Luke - for work with Lucene indexes & queries, see Debug lucene query
- Eclipse ResourceBundleEditor - for work with i18n Internationalization in JSPUI, see I18nSupport#Eclipse_Resource_Bundle_Editor