Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/peachpiecompiler/peachpie
PeachPie - the PHP compiler and runtime for .NET and .NET Core
https://github.com/peachpiecompiler/peachpie
aspnet-core coreclr dotnet dotnetcore microsoft netstandard opensource pchpcompiler peachpie php php-compiler roslyn
Last synced: about 17 hours ago
JSON representation
PeachPie - the PHP compiler and runtime for .NET and .NET Core
- Host: GitHub
- URL: https://github.com/peachpiecompiler/peachpie
- Owner: peachpiecompiler
- License: apache-2.0
- Created: 2016-02-05T16:22:55.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2024-10-19T21:35:11.000Z (about 2 months ago)
- Last Synced: 2024-11-09T08:19:41.019Z (about 1 month ago)
- Topics: aspnet-core, coreclr, dotnet, dotnetcore, microsoft, netstandard, opensource, pchpcompiler, peachpie, php, php-compiler, roslyn
- Language: C#
- Homepage: https://www.peachpie.io
- Size: 66.8 MB
- Stars: 2,367
- Watchers: 111
- Forks: 203
- Open Issues: 92
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-csharp - PeachPie - PeachPie is a PHP compiler and runtime for .NET and .NET Core, which allows entire PHP applications to run on the modern, secure and performant .NET and .NET Core platforms. (Compilers, Transpilers and Languages)
- awesome-dotnet-cn - PeachPie - PeachPie是一个用于.NET和.NET Core的PHP编译器和运行时,让整个PHP应用跑在现代、安全和高性能的.NET与.NET Core平台上。 (编译器、透明机和语言)
- awesome-dotnet-core - peachpie - Open-source PHP compiler to .NET. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet - PeachPie - PeachPie is a PHP compiler and runtime for .NET and .NET Core, which allows entire PHP applications to run on the modern, secure and performant .NET and .NET Core platforms. (Compilers, Transpilers and Languages)
- awesome-php - PeachPie - PHP compiler and runtime for .NET and .NET Core. (Configuration / Virtual Machines)
- awesome-dot-dev - PeachPie - PeachPie is a PHP compiler and runtime for .NET and .NET Core, which allows entire PHP applications to run on the modern, secure and performant .NET and .NET Core platforms. (Compilers, Transpilers and Languages)
- awesome-php-cn - PeachPie - PHP编译器和运行时.NET and .NET Core. (配置 Configuration / 虚拟机 Virtual Machines and Compilers)
- awsome-dotnet - PeachPie - PeachPie is a PHP compiler and runtime for .NET and .NET Core, which allows entire PHP applications to run on the modern, secure and performant .NET and .NET Core platforms. (Compilers, Transpilers and Languages)
- awesome-projects - PeachPie - PHP compiler and runtime for .NET and .NET Core. (Configuration / Virtual Machines)
- fucking-awesome-dotnet-core - peachpie - Open-source PHP compiler to .NET. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet - PeachPie - PeachPie is a PHP compiler and runtime for .NET and .NET Core, which allows entire PHP applications to run on the modern, secure and performant .NET and .NET Core platforms. (Compilers, Transpilers and Languages)
- awesome-dotnet-core - peachpie - Open-source PHP compiler to .NET. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-php - PeachPie - PHP compiler and runtime for .NET and .NET Core. (Configuration / Virtual Machines)
- awesome-dotnet-core - peachpie - .NET的开源PHP编译器。 (框架, 库和工具 / 编译器)
README
PeachPie Compiler
The open-source PHP compiler to .NET
[](https://www.dotnetfoundation.org/)
PeachPie is a member project of the [.NET Foundation](https://www.dotnetfoundation.org/about).## Continuous Integration
| Service | Platform | Build Status |
|---|---|---|
| AppVeyor | Visual Studio 2019 | [![AppVeyor Build status](https://ci.appveyor.com/api/projects/status/1ym8cd838l0od9oa?svg=true)](https://ci.appveyor.com/project/dotnetfoundation/peachpie) |
| Azure DevOps | Windows | ![VSTS Build Status](https://iolevel.visualstudio.com/_apis/public/build/definitions/bd7dcca1-8515-44f8-81d0-bb2acc03d949/1/badge)|
| GitHub Actions | Ubuntu 18 | ![.NET Core](https://github.com/peachpiecompiler/peachpie/workflows/.NET%20Core/badge.svg) |## What is PeachPie?
PeachPie is a modern PHP compiler based on the Microsoft Roslyn compiler platform. It allows PHP to be compiled and executed under the .NET runtime, thereby opening the door for PHP developers into the world of .NET – and vice versa.
## Project goals
- **Both-way interoperability**: the project allows for hybrid applications, where parts are written in C# and others in PHP. The parts will be entirely compatible and can communicate seamlessly, all within the .NET framework.
- **Full .NET compatibility**: compiled programs run on the reimplemented PeachPie runtime, fully compatibly with the PHP runtime.
- **Security**: since programs run within the standardized and manageable .NET or .NET Core environment, the code is fully verifiable without any unsafe constructs. In addition, PHP applications can be distributed source-lessly for added security benefits.
- **Cross-platform development**: the project compiles legacy PHP code into portable class libraries, enabling developers to build cross-platform apps and libraries for Microsoft platforms.
- **Increased performance**: PeachPie's extensive type analysis and the influence of Microsoft Roslyn should provide an improved performance of PHP applications and components.
## How to use PeachPie
There are currently two ways of using PeachPie via `dotnet`: in your favorite shell or comfortably in Visual Studio using our official extension.
### IDEs
You can comfortably work with PeachPie in your favorite IDEs. Download our official [Visual Studio extension](https://marketplace.visualstudio.com/items?itemName=iolevel.peachpie-vs), which makes working with PeachPie compiler as convenient as possible. The extension allows you to easily create a new project using our templates, build & debug, profile your PHP code using the VS diagnostic tools and deploy your project to Azure:
You can also use VS Code or Rider to build and debug PeachPie projects.
### Command line building
Alternatively, you can also work with PeachPie on the command line. Please refer to our [short introduction video](https://www.youtube.com/watch?v=GVWVInYiYLY) to see how to run the compiler on the command line and to the [Getting Started](https://docs.peachpie.io/get-started/) section in our documentation.
### Nightly builds
The most convenient way of using PeachPie is to consume NuGet packages. We provide nightly builds and release builds to our subscribers on Patreon. [Become a Patron](https://www.patreon.com/pchpcompiler) to get access and get listed as our sponsor!
## Status and Compatibility
You can find an up-to-date status of the project in our [Roadmap](https://docs.peachpie.io/roadmap/) section. Please note that the status is dynamic; PeachPie is a work in progress, which means that the list of finished and planned features frequently changes and will be updated on a regular basis. To see the current status of compatibility with the PHP language, please refer to our [Compatibility overview](https://docs.peachpie.io/php/Compatibility/).
## How to contribute?
PeachPie is an open source project we maintain in our spare time. We can use all the help we can get. If you believe you have valuable knowledge and expertise to add to this project, please do not hesitate to contribute to our repo via pull requests or issues – your help is much appreciated.
However, please read the [Contribution Guidelines](https://github.com/peachpiecompiler/peachpie/blob/master/CONTRIBUTING.md) first and ensure you are following them. Also, we kindly ask you to respect our [Code of Conduct](https://github.com/peachpiecompiler/peachpie/blob/master/CODE_OF_CONDUCT.md) when posting or interacting with other users.
You can also support the project on [Patreon](https://www.patreon.com/pchpcompiler), which gives you access to all kinds of perks!
## Providing feedback
If you found a bug, have a question or if you have an improvement suggestion, the easiest way of providing feedback is to ask on [Discord](https://discord.gg/SAs8VP2XqP) or submit an issue here on GitHub. We try to respond as quickly as possible.
## .NET Foundation
This project is supported by the [.NET Foundation](https://www.dotnetfoundation.org/).