Visual Data Preparation Powered by Python
Simple, intutive and easy to use with AI.
English · Try the demo · Report Bug · Request Feature
Amphi is available as both a standalone application or as a JupyterLab extension.
| Amphi ETL (standalone) | Amphi for JupyterLab (extension) |
|---|---|
![]() |
![]() |
pip install amphi-etl |
pip install jupyterlab-amphi |
pip install --upgrade amphi-etl |
pip install --upgrade jupyterlab-amphi |
Note
If you prefer to install Amphi's Jupyterlab extension through the extension manager, make sure to install jupyerlab-amphi package
To start Amphi ETL (standalone), simply run:
amphi startUse the following parameters to specify your:
- workspace (where you can access files and create pipelines on your system),
- IP address to expose
- port to use
amphi start -w /your/workspace/pathFor deploying on a server, you need to specify -i 0.0.0.0 to expose Amphi and access it through the internet. Optionaly specify a different port.
amphi start -w /your/workspace/path -i 0.0.0.0 -p 8888 To update Amphi ETL run the following:
pip install --upgrade amphi-etlNote
Amphi focuses on data transformation for data preparation, reporting and lightweight ETL. It's designed to be super simple to use, quick to ramp up and easy to use with AI (ChatGTP, Claude, Mistra, etc).
Data Preparation:
- Visual Interface / Low-code: Accelerate data pipeline development and reduce maintenance time.
- Python-code Generation: Generate native Python code leveraging common libraries such as pandas, DuckDB that you can run anywhere.
- Private and Secure: Self-host Amphi on your laptop or in the cloud for complete privacy and security over your data.
Amphi is extremely flexible and extensible.
- Custom code: Directly use Python or SQL in your pipelines.
- Custom components: Add custom components directly from the interface.
How to add a component:
// Component file: HelloDate.tsx
class HelloDate extends (globalThis as any).Amphi.BaseCoreComponent {
constructor() {
const description = 'Takes a date and outputs a pandas DataFrame with a message including that date.';
const defaultConfig = { selectedDate: "" };
const form = {
idPrefix: 'component__form',
fields: [
{
type: 'date',
id: 'selectedDate',
label: 'Select a Date',
placeholder: 'Choose a date'
}
]
};
const icon = {
name: 'amphi-date-input-hello',
svgstr:
'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M19 4h-1V2h-2v2H8V2H6v2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2Zm0 16H5V9h14v11Z"/><path d="M12 11h2v2h-2zM8 11h2v2H8zM16 11h2v2H8zM8 15h2v2H8zM12 15h2v2h-2zM16 15h2v2h-2z"/></svg>'
};
// Parameters: Display Name, Technical ID, Description, Output Type, Inputs, Category, Icon, DefaultConfig, Form
super('Hello Date', 'helloDate', description, 'pandas_df_input', [], 'inputs', icon, defaultConfig, form);
}
provideImports() {
return ['import pandas as pd'];
}
generateComponentCode({ config, outputName }) {
const date = String(config?.selectedDate ?? '').trim() || 'No Date Selected';
// We create a DataFrame and assign it to the outputName variable
return `
data = {
'event': ['Date Selection'],
'selected_date': ['${date}'],
'message': ['The user selected the date: ${date}']
}
${outputName} = pd.DataFrame(data)
`;
}
}
export default new HelloDate();Create a new file in your workspace, such as HelloDate.tsx and then right-click and select "Add Component". You should see a notification "ent "Hello Date" (helloDate) updated successfully."
Then either open a new pipeline or refresh the component palette to see the new component appear in the Inputs.
- Use and Innovate: Try Amphi and share your use case with us. Your real-world usage and feedback help us improve our product.
- Voice Your Insights: Encounter a bug? Have a question? Share them by submitting issues and help us enhance the user experience.
- Shape the Future: Have code enhancements or feature ideas? We invite you to propose pull requests and contribute directly.
Every contribution is helpful.
Amphi collects anonymous telemetry data to help us understand users and their use-cases better to improve the product. You can of course opt out in the settings and disable any telemetry data collection.
Copyright © 2024-2026 - present Amphi Labs.
This project is ELv2 licensed.


