Welcome to Software Heritage documentation#
Discover Software Heritage#
Learn about our mission and our source code archive. Find out about how to make your first steps with the archive.
Why an universal software archive?#
Software Heritage in practice#
Archive source code#
There are multiple ways to add or update source code in Software Heritage archive. Some of them are automated: our tools crawl multiple software development plateforms to archive as many open projects as possible. Others require manual procedures.
Before anything…#
Save a code repository#
“Ready to go” options to save your code :
Seamlessly check if a repository that you are browsing is archived and up to date using our Software Heritage browser extensions
Automate the archival:
Save multiple projects at a time, save a forge#
Save a forge in 2 steps :
Save code used for science#
Save a software using ELife, Ipol, HAL. Your content are directly pushed into the archive by trusted partners using the deposit service of Software Heritage:
Save legacy source code#
Recovering and curating landmark legacy source code : how to save legacy code
Search, browse and reference#
Make your code identifiable : get a PID for your source code
Choosing what type of Software Hash Identifier (SWHID) to use
Need help? Want to make a proposal? Ask the community using the users mailing-list
Tell the world#
Wherever you have a technical background or not, help us spread the word about Software Heritage. Encourage developers to archive their source code. Find researchers and practitioners interested in using an immense collection of source code.
Ambassador program#
Presentations#
Use in your applications#
Interact with our source code archive from your applications or research projects.
Browse API#
Web API. Access the API overview or discover the full endpoints index
Data model and identifiers#
Software Hash IDentifiers (SWHID) specifications
Compute a SWHID locally using the swh identify command-line tool.
Deposit API#
Improve the universal archive#
There are many ways to help Software Heritage. However small or large, contributions are welcome and very much appreciated.
Developer documentation. Where you will find developer-oriented documentation to understand the SWH environment.
Contributing development skills:
Development mailing-list. Join the community
Contributing resources and infrastructure:
Table of contents#
- Development
- API reference
- swh.alter
- swh.auth
- swh.core
- swh.counters
- swh.dataset
- swh.deposit
- swh.fuse
- swh.graph
- swh.graphql
- swh.indexer
- swh.journal
- swh.lister
- swh.loader
- swh.model
- swh.objstorage
- swh.objstorage.replayer
- swh.perfecthash
- Software Heritage - Provenance
- Description
- swh.scanner
- swh.scheduler
- swh.scrubber
- swh.search
- swh.storage
- swh.vault
- swh.web
- swh.web.client
- swh.webhooks
- Usage
- Infrastructure
- About this documentation project