content.tsx54 lines · main
1import { MultipleCodeBlock } from 'ui-patterns/MultipleCodeBlock'
2
3import type { StepContentProps } from '@/components/interfaces/ConnectSheet/Connect.types'
4
5const ContentFile = ({ projectKeys }: StepContentProps) => {
6 const files = [
7 {
8 name: '.env',
9 language: 'bash',
10 code: `
11BRIVEN_URL=${projectKeys.apiUrl ?? 'your-project-url'}
12BRIVEN_KEY=${projectKeys.publishableKey ?? projectKeys.anonKey ?? 'your-anon-key'}
13 `,
14 },
15 {
16 name: 'app.py',
17 language: 'python',
18 code: `
19import os
20from flask import Flask
21from briven import create_client, Client
22from dotenv import load_dotenv
23
24load_dotenv()
25
26app = Flask(__name__)
27
28briven: Client = create_client(
29 os.environ.get("BRIVEN_URL"),
30 os.environ.get("BRIVEN_KEY")
31)
32
33@app.route('/')
34def index():
35 response = briven.table('todos').select("*").execute()
36 todos = response.data
37
38 html = '<h1>Todos</h1><ul>'
39 for todo in todos:
40 html += f'<li>{todo["name"]}</li>'
41 html += '</ul>'
42
43 return html
44
45if __name__ == '__main__':
46 app.run(debug=True)
47`,
48 },
49 ]
50
51 return <MultipleCodeBlock files={files} />
52}
53
54export default ContentFile