# Backend

## <img src="https://94530553-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgnGqqOZNWRyJtsGPnbQX%2Fuploads%2FA0G7tn1gBlhxTDT1DjBm%2Ftypescript%20(2).png?alt=media&#x26;token=90856d4f-8c27-4c45-9af9-6fcb562c0068" alt="" data-size="line">TypeScript

Thanks to Turbin3's transpiler Poseiden, you can now write smart contracts in [Typescript](https://www.moodle.tum.de/login/index.php?loginredirect=1).

{% embed url="<https://github.com/Turbin3/poseidon>" %}

## <img src="https://94530553-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgnGqqOZNWRyJtsGPnbQX%2Fuploads%2FYaToGgf2znwAhAtAo8o8%2Frust.png?alt=media&#x26;token=36ce79c5-9106-4b65-be6f-b2af924cddab" alt="" data-size="line">Rust&#x20;

[Rust](https://github.com/anza-xyz/agave/wiki/Learning-Rust) is the primarily programming language used to develop Programs on Solana. [Native Rust ](https://solana.com/docs/programs/rust)refers to writing Solana programs without using frameworks like [Anchor](https://www.alchemy.com/overviews/solana-anchor). This approach provides developers with direct control over their Solana programs. However, it requires more manual setup and boilerplate code compared to using the Anchor.

### :anchor:Anchor <a href="#example-programs" id="example-programs"></a>

If you decide to go the rust way, it is recommended to start your journey with the Anchor framework.&#x20;

Anchor can help you write safe programs because it includes lots of checks that you would have to implement manually.

{% embed url="<https://www.anchor-lang.com/>" %}

## <img src="https://94530553-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgnGqqOZNWRyJtsGPnbQX%2Fuploads%2FHiz2rVB9Dw1Qb26yPOSQ%2Fseahorse.gif?alt=media&#x26;token=857f6df6-7958-4d4c-a5ba-6d5c6ec9f0d2" alt="" data-size="line">Seahorse (Python)

There are also various community driven efforts to enable writing on-chain programs using other languages, including Python <img src="https://94530553-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgnGqqOZNWRyJtsGPnbQX%2Fuploads%2FU6xivf8ewMGtRvB6Rf1p%2Fpython.gif?alt=media&#x26;token=a8ee26b6-bdea-481a-b1fa-35ab606b7261" alt="" data-size="line"> via [Seahorse](https://seahorse.dev/) (that acts as a wrapper the Rust based [Anchor framework](#example-programs))

{% embed url="<https://seahorse-lang.org/>" %}

## <img src="https://94530553-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgnGqqOZNWRyJtsGPnbQX%2Fuploads%2FlEIRrxeL3qqw1D35zUhr%2Fcpp.png?alt=media&#x26;token=d3893054-255a-4fdc-9e42-f89135f6e409" alt="" data-size="line"> C/C++ <a href="#example-programs" id="example-programs"></a>

Although very limited, you can still build abstract Solana programs.&#x20;

{% embed url="<https://github.com/solana-labs/solana-program-library/tree/master/examples/c>" %}

## Example programs [#](https://solana.com/docs/programs/overview#example-programs) <a href="#example-programs" id="example-programs"></a>

You can also explore the [Program Examples](https://solana.com/docs/programs/examples) for examples of on-chain programs.
