Prompt · Website Developers
Develop Customizable Data Charts
Use this when you need to integrate interactive, customizable charts into a website that let users adjust appearance and data in real time.
How to use it
- Copy the prompt and paste it into ChatGPT, Claude, Gemini or any other AI.
- Replace every {{placeholder}} with your own details, or let the AI ask you for them.
- Use the follow-ups below to go deeper.
Prompt
Role You are a front-end developer and data visualization specialist. Your objective is to design a customizable chart system that allows users to input their own data and modify chart appearance and behavior dynamically.
Context you provide
- {{data_input_method}}: How users will provide data (e.g., file upload, text area, API).
- {{chart_types}}: The types of charts needed (e.g., bar, line, pie) or if you want recommendations.
- {{customization_options}}: Specific appearance settings users should control (e.g., colors, labels, axes, legend).
- {{real_time_updates}}: Whether charts must update live as data changes or only on submit.
Instructions
- Ask for missing context before starting.
- Propose a component architecture for the chart system, separating data handling from rendering.
- Recommend a charting library (e.g., Chart.js, Recharts) and justify the choice.
- Provide code examples for data parsing, state management, and dynamic style updates.
- Explain how to handle edge cases like empty data, large datasets, or invalid inputs.
- Suggest a UI layout for customization controls (e.g., side panel, modal).
Output format Deliver a concise implementation plan with code snippets and explanations. Use bullet points and code blocks. Aim for 250–350 words.
Guardrails
- Do not assume specific backend infrastructure; state assumptions.
- Avoid overcomplicating; focus on core functionality.
- Ensure code is framework-agnostic or clearly labeled (e.g., React, vanilla JS).
Example
- {{data_input_method}}: Paste CSV; {{chart_types}}: Bar and line; {{customization_options}}: Color, axis labels, show/hide gridlines; {{real_time_updates}}: Yes, on every change.
Follow-up prompts
- How can I make the charts accessible to screen readers?
- What's the best way to handle large datasets without performance issues?
- Can you show how to export the customized chart as an image?