Why share source code archives by link instead of email?
A small file may fit in an email. An application’s source code, images, and packages will not. Gmail does not accept attachments over 25 MB, and Outlook does not accept attachments over about 20 MB. Email may also reject an archive for security reasons if it contains executable files such as .exe or .js.
Splitting code across messages leaves the recipient with an incomplete project. A shared drive means an account and ongoing access. A link lets the recipient download a copy of the code within a limited time. It is not a place for collaborative coding.
The copy the recipient opens should contain the files you selected.
| Method | What happens | Suitability for source code |
|---|---|---|
| Gmail or Outlook attachment | Attachments over 20–25 MB cannot be sent | Not suitable |
| Splitting across several emails | Missing files break the project | Not suitable |
| Shared drive | Requires an account and ongoing access | Use with care |
| Repository host | Stores previous versions and reviews | Does not replace delivery |
| SendGB link | Code is not compiled or sent as an attachment | Suitable for delivery |
The example above is a delivery that fits within the free limit: the application ZIP, product photos, setup notes, and an empty sample configuration file. This example does not include the dependency folder.
Sending a repository vs. dragging a folder
A repository holds the code and its previous versions. Git manages this. We don’t provide repository hosting. We don’t add new versions, store reviews, or write release notes.
You create a copy. If you don’t want to include the history, create the archive yourself. In Git, the command is git archive. If you want the history in a single file, use git bundle. We don’t run these commands. We don’t clone repositories.
You can also transfer a source code folder by dragging it in as it is. Folder names are preserved when the entire transfer is downloaded. Files are not recompressed. Clicking an individual file does not recreate the folder. Empty folders are not uploaded.
| As a folder | A ZIP you create | |
|---|---|---|
| Best for | A small number of source files | Many files or a single-file delivery |
| History | Included if you add .git | Included if you add it to the archive |
| File count | 500, or 2,500 with SendGB Extra | Usually one file |
| Setup | The recipient installs it themselves | We don’t open the ZIP |
| What we do | We don’t compile code | We don’t combine archives |
Our download package is not a Git repository. The recipient cannot open it as a repository. If it needs to be a repository, prepare the archive yourself using your own tool.
What should you include?
Source code alone is not enough. You also need to specify which package versions to install. Secret keys should not be included.
| File | Purpose | Without it |
|---|---|---|
| Source files | The application itself | There is nothing to install |
| Lock file | Specifies package versions | The recipient may install a different version |
| Setup notes | Commands and versions | Setup becomes guesswork |
| Sample configuration | Field names with empty values | Secret keys may be sent by mistake |
| Product image | Needed if stored outside the source | The page opens blank |
A lock file, such as package-lock.json or composer.lock, specifies which versions to install. You include it yourself. We don’t install packages.
A dependency folder contains the ready-made packages the project has downloaded. node_modules and vendor are examples. In most projects, they hold thousands of small files. The free limit is 500 files. That is not enough. Remove the folder. The recipient installs the packages themselves using the command in your notes.
If .env and private keys are in the folder, they go to the recipient. We don’t remove them. Include an empty .env.example. Don’t put the values in the link. Send the password separately from the link. The ZIP password is separate. We don’t check licenses either. Don’t include a package that cannot legally be distributed.
See the folder transfer guide for how folder structure is preserved during download. See the ZIP transfer guide to send a repository ZIP without opening it. A database backup is not part of the code. Send it separately using the database backup guide.
Are 5 GB and 500 files enough?
Source text is often small. Images, dependency folders, and years of history increase the size and file count. Free transfers are limited to 5 GB and 500 files. If either limit is exceeded, the file cannot be sent.
Creating another ZIP of the code will not reduce the size much if the images inside are already compressed. Plain text can get smaller with compression. You handle the compression. We don’t open or recompress the ZIP.
| What you are sending | In practice | Which option is enough |
|---|---|---|
| Source code and a lock file | Few files, under 5 GB | Free; up to 90 days for up to 250 MB, 7 days above that |
| Project with images | May be several GB | Free if it fits; otherwise SendGB Extra |
| Dependency folder, as individual files | Thousands of small files | Hits the 500 or 2,500 file limit; ZIP it or leave it out |
Years of .git history | Many files or one large archive | SendGB Extra, 500 GB per transfer |
| Single archive over 500 GB | Rare | SendGB Exceed, up to 1 TB |
SendGB Extra starts at €29.90 per year. It includes 1 TB of storage. SendGB Extra keeps files for up to 1 year. The limit per transfer is 500 GB and 2,500 files. It suits teams that frequently deliver large archives.
SendGB Exceed does not require a membership. A 1 TB transfer costs €9.99. The code can be used once and is valid for 1 year. The link stays available for 7 days. The file count limit is 2,500. It is enough for an occasional single archive over 500 GB. We cannot send more than 1 TB in a single transfer.
If you enter your email address, you are notified once when the download starts. With email delivery, you are notified once per recipient. With link delivery, you are notified once per transfer. If the same person downloads again, no new email is sent. The notification does not confirm that all the code has been downloaded, installed, or deployed.
How to send
- 1
Add the archive
Add your prepared ZIP or code folder to the upload box. Leave out the dependency folder and secret key file. The free limit is 5 GB and 500 files in total. If you exceed either limit, you need SendGB Extra or SendGB Exceed.
- 2
Send the link
Send the link to the recipient’s email address, or copy it into a message. Add a password for closed-source code. Send the password separately from the link. If you enter your own email address, you are notified once when the download starts.
- 3
The recipient downloads
The recipient downloads from the link and does not create an account. We don’t compile the code on the page. They open the ZIP on their own computer and install the packages themselves. Free transfers up to 250 MB stay available for up to 90 days. Free transfers over 250 MB stay available for 7 days. SendGB Extra keeps files for up to 1 year.
What happens to your file?
- We leave your files untouched. Archives are not opened, code is not compiled, and tests are not run.
- ZIPs, folders, and lock files download as they are.
- Folder names stay intact when the entire transfer is downloaded. Files are not recompressed.
- If you enter your email address, you are notified once when someone starts downloading.
What we don’t do
- We are not a repository host. We don’t store history, branches, or reviews.
- We don’t install packages. We don’t remove secret keys or .env files.
- Free transfers are limited to 500 files. SendGB Extra and SendGB Exceed allow up to 2,500.
- A download notification does not mean the code has been installed or deployed.
Frequently asked questions
What is a source code archive?
It is a copy of a project that someone else can open on their own computer. A repository holds the code and its previous versions. Git manages this. We are not a repository host. You send the file or folder. The recipient downloads it.
Does SendGB replace GitHub?
No. There is no version history, code review, or collaborative coding. The link lets the recipient download a copy of the code. We don’t host a live repository.
Can I send node_modules or vendor?
Yes, if you include them and they fit within the limits. These folders contain ready-made packages. In most projects, they hold thousands of small files. Free transfers are limited to 500 files, and SendGB Extra and SendGB Exceed are limited to 2,500 files. A folder that exceeds the limit cannot be included in the transfer. Remove the dependency folder. The lock file specifies which versions to install. We don’t run the installation command.
Can I send version history too?
If you include the .git folder, the history in that copy goes with it. This folder can also contain many files. If you don’t want to send the history, create the archive yourself. In Git, the command is git archive. To send the history as a single file, use git bundle. We don’t run these commands. We don’t clone repositories.
Will the .env file be removed?
No. We don’t touch secret keys, passwords, or .env files. If you include them in the folder, they go to the recipient. Include an empty .env.example instead. Don’t put the actual values in the link. Send the password separately from the link. We don’t check licenses either.
Can the recipient view the code on the page?
There is no code editor on the page. Code is not compiled. ZIPs are not opened. A short .txt, .md, or .json note can be opened. The recipient opens the code on their own computer. No account is needed to download. The browser may display a warning when downloading .js or .exe files. We don’t disable that warning. We don’t scan the file.
Do I have to use a ZIP?
No. You can send a folder too. Folder names are preserved when the entire transfer is downloaded. Files are not recompressed. Clicking an individual file does not recreate the folder. If you have many small files, a single ZIP is safer. We don’t combine split archives. If the ZIP has its own password, you remain responsible for it.
Why won’t Gmail accept the archive?
Gmail does not accept attachments over 25 MB, and Outlook does not accept attachments over about 20 MB. Source code, images, and packages exceed these limits. Email may also reject an archive because it contains an executable file. A link is not an attachment. No add-on is needed.
Will I be notified when the recipient starts downloading?
Yes, if you enter your email address. With email delivery, you are notified once per recipient. With link delivery, you are notified once per transfer. The notification tells you that the download has started. It does not confirm that the entire file has been downloaded. It does not mean the code has been installed.
Which transfer limit do I need?
An archive under 5 GB and 500 files can be sent for free. Free transfers up to 250 MB stay available for up to 90 days. Free transfers over 250 MB stay available for 7 days. Larger deliveries require SendGB Extra: 500 GB per transfer, 2,500 files, 1 TB of storage, starting at €29.90 per year. SendGB Extra keeps files for up to 1 year. For a single archive over 500 GB, SendGB Exceed is enough: no membership, 2,500 files, and €9.99 for a 1 TB transfer. The code can be used once and is valid for 1 year. The link stays available for 7 days. More than 1 TB will not fit in a single transfer.
Send a download link, not a source code attachment
Source code and a lock file often fit within 5 GB. Dependency folders and years of history can exceed the file count limit. SendGB Extra handles larger archives up to 500 GB, and SendGB Exceed handles up to 1 TB in a single transfer.
Start sending