from flask import Flask, render_template, url_for import pandas as pd app = Flask(__name__) @app.route('/') def index(): # Load the CSV file into a DataFrame df = pd.read_csv('static/leaderboard.csv') df = df.round(3) df.insert(0, '#', '') df = df.rename(columns={ "Ordinal (Win rate)": "Ordinal (Win rate) (+)", "Cardinal (Score)": "Cardinal (Score) (+)", "RO Stability": "RO Stability (+)", "Rank Distance": "Rank Distance (-)", "CFI": "CFI (+)", "SRMR": "SRMR (-)", "RMSEA": "RMSEA (-)", "Cronbach alpha": "Cronbach alpha (+)" }) # Generate the table HTML with clickable model names table_html = df.to_html(classes='table table-striped table-bordered', escape=False, index=False) # Modify the table HTML to add links to model names for model in df['Model']: model_link = f'{model}' table_html = table_html.replace(f'>{model}<', f'>{model_link}<') # Render the template with the table HTML return render_template('index.html', table_html=table_html) @app.route('/model/') def model_detail(model_name): return render_template('model_detail.html', model_name=model_name) @app.route('/about') def about(): return render_template('about.html') if __name__ == '__main__': app.run(host='0.0.0.0', port=7860, debug=True)