diff --git a/.idea/.gitignore b/.idea/.gitignore
deleted file mode 100644
index 26d33521af10bcc7fd8cea344038eaaeb78d0ef5..0000000000000000000000000000000000000000
--- a/.idea/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-# Default ignored files
-/shelf/
-/workspace.xml
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 412a64606d15346ba167189b4b4e6ae9a732e451..c24b221700b99ac03d63c759e944aec46c1cea6e 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -2,6 +2,16 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools">
 
+    <uses-feature
+        android:name="android.hardware.camera"
+        android:required="false" />
+
+    <uses-permission android:name="android.permission.CAMERA"/>
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
+        android:maxSdkVersion="32" />
+    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"
+        android:maxSdkVersion="32" />
+
     <application
         android:allowBackup="true"
         android:dataExtractionRules="@xml/data_extraction_rules"
@@ -23,6 +33,21 @@
                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
         </activity>
+
+        <activity android:name=".CreateModelActivity" android:exported="true"/>
+        <activity android:name=".LoadModelActivity" android:exported="true"/>
+        <activity android:name=".AddPhotosActivity" android:exported="true"/>
+
+        <provider
+            android:name="androidx.core.content.FileProvider"
+            android:authorities="${applicationId}.provider"
+            android:exported="false"
+            android:grantUriPermissions="true">
+            <meta-data
+                android:name="android.support.FILE_PROVIDER_PATHS"
+                android:resource="@xml/file_paths" />
+        </provider>
+
     </application>
 
 </manifest>
\ No newline at end of file
diff --git a/app/src/main/java/fr/ul/projetdevmob/AddPhotosActivity.java b/app/src/main/java/fr/ul/projetdevmob/AddPhotosActivity.java
new file mode 100644
index 0000000000000000000000000000000000000000..41761b7a37ae0cb298fb890f9e04773a726bc157
--- /dev/null
+++ b/app/src/main/java/fr/ul/projetdevmob/AddPhotosActivity.java
@@ -0,0 +1,94 @@
+package fr.ul.projetdevmob;
+
+import android.content.Intent;
+import android.net.Uri;
+import android.os.Bundle;
+import android.os.Environment;
+import android.provider.MediaStore;
+import android.view.View;
+import android.widget.Button;
+import android.widget.Toast;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.core.content.FileProvider;
+import java.io.File;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import fr.ul.projetdevmob.model.ImageMur;
+import fr.ul.projetdevmob.model.Piece;
+
+public class AddPhotosActivity extends AppCompatActivity {
+
+    private static final int REQUEST_IMAGE_CAPTURE = 1;
+
+    private String currentOrientation;
+    private String currentPhotoPath;
+
+    private HashMap<String, String> photoPaths = new HashMap<>(); // pour stocker N, S, E, O
+
+    private String pieceName; // nom de la pièce à récupérer
+    private Piece currentPiece;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_add_photos);
+
+        // récupérer le nom de la pièce depuis l’activité précédente
+        pieceName = getIntent().getStringExtra("nom_piece");
+        currentPiece = new Piece(pieceName);
+
+        // lier les boutons
+        Button btnN = findViewById(R.id.btnPhotoN);
+        Button btnS = findViewById(R.id.btnPhotoS);
+        Button btnE = findViewById(R.id.btnPhotoE);
+        Button btnO = findViewById(R.id.btnPhotoO);
+
+        btnN.setOnClickListener(v -> takePhoto("N"));
+        btnS.setOnClickListener(v -> takePhoto("S"));
+        btnE.setOnClickListener(v -> takePhoto("E"));
+        btnO.setOnClickListener(v -> takePhoto("O"));
+    }
+
+    private void takePhoto(String orientation) {
+        currentOrientation = orientation;
+        Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
+
+        if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
+            File photoFile = null;
+            try {
+                photoFile = createImageFile();
+            } catch (IOException ex) {
+                Toast.makeText(this, "Erreur création image", Toast.LENGTH_SHORT).show();
+            }
+
+            if (photoFile != null) {
+                Uri photoURI = FileProvider.getUriForFile(this,
+                        getPackageName() + ".provider", photoFile);
+                takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI);
+                startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
+            }
+        }
+    }
+
+    private File createImageFile() throws IOException {
+        String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
+        String fileName = "IMG_" + currentOrientation + "_" + timeStamp;
+        File storageDir = getExternalFilesDir(Environment.DIRECTORY_PICTURES);
+        File image = File.createTempFile(fileName, ".jpg", storageDir);
+        currentPhotoPath = image.getAbsolutePath();
+        return image;
+    }
+
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+
+        if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
+            photoPaths.put(currentOrientation, currentPhotoPath);
+            currentPiece.ajouterImage(currentOrientation, new ImageMur(currentPhotoPath));
+            Toast.makeText(this, "Photo " + currentOrientation + " enregistrée !", Toast.LENGTH_SHORT).show();
+        }
+    }
+}
diff --git a/app/src/main/java/fr/ul/projetdevmob/CreateModelActivity.java b/app/src/main/java/fr/ul/projetdevmob/CreateModelActivity.java
new file mode 100644
index 0000000000000000000000000000000000000000..12babce4b0afa5e7bc6678e95725e4efc410f9d1
--- /dev/null
+++ b/app/src/main/java/fr/ul/projetdevmob/CreateModelActivity.java
@@ -0,0 +1,68 @@
+package fr.ul.projetdevmob;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.view.View;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.TextView;
+import androidx.appcompat.app.AlertDialog;
+import androidx.appcompat.app.AppCompatActivity;
+import fr.ul.projetdevmob.model.Modele;
+import fr.ul.projetdevmob.model.Piece;
+
+public class CreateModelActivity extends AppCompatActivity {
+
+    private EditText editModelName;
+    private Button btnAddPiece;
+    private TextView txtPiecesList;
+
+    private Modele modele;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_create_model);
+
+        editModelName = findViewById(R.id.editModelName);
+        btnAddPiece = findViewById(R.id.btnAddPiece);
+        txtPiecesList = findViewById(R.id.txtPiecesList);
+
+        modele = new Modele("Sans nom");
+
+        btnAddPiece.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                String nomModele = editModelName.getText().toString();
+                if (!nomModele.isEmpty()) {
+                    modele = new Modele(nomModele);
+                }
+
+                showAddPieceDialog();
+            }
+        });
+    }
+
+    private void showAddPieceDialog() {
+        final EditText input = new EditText(this);
+        input.setHint("Nom de la pièce");
+
+        new AlertDialog.Builder(this)
+                .setTitle("Ajouter une pièce")
+                .setView(input)
+                .setPositiveButton("Ajouter", (dialog, which) -> {
+                    String pieceName = input.getText().toString();
+                    if (!pieceName.isEmpty()) {
+                        Piece piece = new Piece(pieceName);
+                        modele.ajouterPiece(piece);
+                        txtPiecesList.setText("Pièces : " + modele.getPieces().size());
+
+                        Intent intent = new Intent(CreateModelActivity.this, AddPhotosActivity.class);
+                        intent.putExtra("nom_piece", pieceName);
+                        startActivity(intent);
+                    }
+                })
+                .setNegativeButton("Annuler", null)
+                .show();
+    }
+}
diff --git a/app/src/main/java/fr/ul/projetdevmob/LoadModelActivity.java b/app/src/main/java/fr/ul/projetdevmob/LoadModelActivity.java
new file mode 100644
index 0000000000000000000000000000000000000000..70d8577d8291e14cb9516d8f28324650e63afa8d
--- /dev/null
+++ b/app/src/main/java/fr/ul/projetdevmob/LoadModelActivity.java
@@ -0,0 +1,12 @@
+package fr.ul.projetdevmob;
+
+import android.os.Bundle;
+import androidx.appcompat.app.AppCompatActivity;
+
+public class LoadModelActivity extends AppCompatActivity {
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_load_model);
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/java/fr/ul/projetdevmob/MainActivity.kt b/app/src/main/java/fr/ul/projetdevmob/MainActivity.kt
deleted file mode 100644
index 6cdb55c286baa079d602ac40eeda5505dca9f758..0000000000000000000000000000000000000000
--- a/app/src/main/java/fr/ul/projetdevmob/MainActivity.kt
+++ /dev/null
@@ -1,47 +0,0 @@
-package fr.ul.projetdevmob
-
-import android.os.Bundle
-import androidx.activity.ComponentActivity
-import androidx.activity.compose.setContent
-import androidx.activity.enableEdgeToEdge
-import androidx.compose.foundation.layout.fillMaxSize
-import androidx.compose.foundation.layout.padding
-import androidx.compose.material3.Scaffold
-import androidx.compose.material3.Text
-import androidx.compose.runtime.Composable
-import androidx.compose.ui.Modifier
-import androidx.compose.ui.tooling.preview.Preview
-import fr.ul.projetdevmob.ui.theme.ProjetdevmobTheme
-
-class MainActivity : ComponentActivity() {
-    override fun onCreate(savedInstanceState: Bundle?) {
-        super.onCreate(savedInstanceState)
-        enableEdgeToEdge()
-        setContent {
-            ProjetdevmobTheme {
-                Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding ->
-                    Greeting(
-                        name = "Android",
-                        modifier = Modifier.padding(innerPadding)
-                    )
-                }
-            }
-        }
-    }
-}
-
-@Composable
-fun Greeting(name: String, modifier: Modifier = Modifier) {
-    Text(
-        text = "Hello $name!",
-        modifier = modifier
-    )
-}
-
-@Preview(showBackground = true)
-@Composable
-fun GreetingPreview() {
-    ProjetdevmobTheme {
-        Greeting("Android")
-    }
-}
\ No newline at end of file
diff --git a/app/src/main/java/fr/ul/projetdevmob/model/Acces.java b/app/src/main/java/fr/ul/projetdevmob/model/Acces.java
new file mode 100644
index 0000000000000000000000000000000000000000..adbe05e789162af3ab416219f1010a3425b506f5
--- /dev/null
+++ b/app/src/main/java/fr/ul/projetdevmob/model/Acces.java
@@ -0,0 +1,20 @@
+package fr.ul.projetdevmob.model;
+
+public class Acces {
+    private int x, y, width, height; // zone cliquable
+    private String destination; // nom de la pièce cible
+
+    public Acces(int x, int y, int width, int height, String destination) {
+        this.x = x;
+        this.y = y;
+        this.width = width;
+        this.height = height;
+        this.destination = destination;
+    }
+
+    public int getX() { return x; }
+    public int getY() { return y; }
+    public int getWidth() { return width; }
+    public int getHeight() { return height; }
+    public String getDestination() { return destination; }
+}
diff --git a/app/src/main/java/fr/ul/projetdevmob/model/ImageMur.java b/app/src/main/java/fr/ul/projetdevmob/model/ImageMur.java
new file mode 100644
index 0000000000000000000000000000000000000000..f1621767033efe121ef48754c5607d1b87dd77f4
--- /dev/null
+++ b/app/src/main/java/fr/ul/projetdevmob/model/ImageMur.java
@@ -0,0 +1,21 @@
+package fr.ul.projetdevmob.model;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class ImageMur {
+    private String path; // chemin de l'image
+    private List<Acces> accesList;
+
+    public ImageMur(String path) {
+        this.path = path;
+        this.accesList = new ArrayList<>();
+    }
+
+    public String getPath() { return path; }
+    public List<Acces> getAccesList() { return accesList; }
+
+    public void ajouterAcces(Acces acces) {
+        accesList.add(acces);
+    }
+}
diff --git a/app/src/main/java/fr/ul/projetdevmob/model/Modele.java b/app/src/main/java/fr/ul/projetdevmob/model/Modele.java
new file mode 100644
index 0000000000000000000000000000000000000000..e8425135a6957d5377eecf9e5f5ee91ed62387b5
--- /dev/null
+++ b/app/src/main/java/fr/ul/projetdevmob/model/Modele.java
@@ -0,0 +1,22 @@
+package fr.ul.projetdevmob.model;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class Modele {
+    private String nom;
+    private List<Piece> pieces;
+
+    public Modele(String nom) {
+        this.nom = nom;
+        this.pieces = new ArrayList<>();
+    }
+
+    public String getNom() { return nom; }
+    public List<Piece> getPieces() { return pieces; }
+
+    public void ajouterPiece(Piece piece) {
+        pieces.add(piece);
+    }
+}
+
diff --git a/app/src/main/java/fr/ul/projetdevmob/model/Piece.java b/app/src/main/java/fr/ul/projetdevmob/model/Piece.java
new file mode 100644
index 0000000000000000000000000000000000000000..5ee395c5e54c2fa1e1a9c5bd2bb75b145bad45cc
--- /dev/null
+++ b/app/src/main/java/fr/ul/projetdevmob/model/Piece.java
@@ -0,0 +1,28 @@
+package fr.ul.projetdevmob.model;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class Piece {
+    private String nom;
+    private Map<String, ImageMur> images; // "N", "S", "E", "O"
+
+    public Piece(String nom) {
+        this.nom = nom;
+        this.images = new HashMap<>();
+    }
+
+    public String getNom() { return nom; }
+
+    public void ajouterImage(String orientation, ImageMur image) {
+        images.put(orientation, image);
+    }
+
+    public ImageMur getImage(String orientation) {
+        return images.get(orientation);
+    }
+
+    public Map<String, ImageMur> getImages() {
+        return images;
+    }
+}
diff --git a/app/src/main/java/fr/ul/projetdevmob/ui/theme/Color.kt b/app/src/main/java/fr/ul/projetdevmob/ui/theme/Color.kt
deleted file mode 100644
index 97ccf1653345bfaca9e53a42ae05a40219b3dcc0..0000000000000000000000000000000000000000
--- a/app/src/main/java/fr/ul/projetdevmob/ui/theme/Color.kt
+++ /dev/null
@@ -1,11 +0,0 @@
-package fr.ul.projetdevmob.ui.theme
-
-import androidx.compose.ui.graphics.Color
-
-val Purple80 = Color(0xFFD0BCFF)
-val PurpleGrey80 = Color(0xFFCCC2DC)
-val Pink80 = Color(0xFFEFB8C8)
-
-val Purple40 = Color(0xFF6650a4)
-val PurpleGrey40 = Color(0xFF625b71)
-val Pink40 = Color(0xFF7D5260)
\ No newline at end of file
diff --git a/app/src/main/java/fr/ul/projetdevmob/ui/theme/Theme.kt b/app/src/main/java/fr/ul/projetdevmob/ui/theme/Theme.kt
deleted file mode 100644
index ef34a52f5f60c51532c73fe9a1120f18c9d0208d..0000000000000000000000000000000000000000
--- a/app/src/main/java/fr/ul/projetdevmob/ui/theme/Theme.kt
+++ /dev/null
@@ -1,58 +0,0 @@
-package fr.ul.projetdevmob.ui.theme
-
-import android.app.Activity
-import android.os.Build
-import androidx.compose.foundation.isSystemInDarkTheme
-import androidx.compose.material3.MaterialTheme
-import androidx.compose.material3.darkColorScheme
-import androidx.compose.material3.dynamicDarkColorScheme
-import androidx.compose.material3.dynamicLightColorScheme
-import androidx.compose.material3.lightColorScheme
-import androidx.compose.runtime.Composable
-import androidx.compose.ui.platform.LocalContext
-
-private val DarkColorScheme = darkColorScheme(
-    primary = Purple80,
-    secondary = PurpleGrey80,
-    tertiary = Pink80
-)
-
-private val LightColorScheme = lightColorScheme(
-    primary = Purple40,
-    secondary = PurpleGrey40,
-    tertiary = Pink40
-
-    /* Other default colors to override
-    background = Color(0xFFFFFBFE),
-    surface = Color(0xFFFFFBFE),
-    onPrimary = Color.White,
-    onSecondary = Color.White,
-    onTertiary = Color.White,
-    onBackground = Color(0xFF1C1B1F),
-    onSurface = Color(0xFF1C1B1F),
-    */
-)
-
-@Composable
-fun ProjetdevmobTheme(
-    darkTheme: Boolean = isSystemInDarkTheme(),
-    // Dynamic color is available on Android 12+
-    dynamicColor: Boolean = true,
-    content: @Composable () -> Unit
-) {
-    val colorScheme = when {
-        dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {
-            val context = LocalContext.current
-            if (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context)
-        }
-
-        darkTheme -> DarkColorScheme
-        else -> LightColorScheme
-    }
-
-    MaterialTheme(
-        colorScheme = colorScheme,
-        typography = Typography,
-        content = content
-    )
-}
\ No newline at end of file
diff --git a/app/src/main/java/fr/ul/projetdevmob/ui/theme/Type.kt b/app/src/main/java/fr/ul/projetdevmob/ui/theme/Type.kt
deleted file mode 100644
index 2a2bfe464387e71baf9be38a5667fe9f4dcb5784..0000000000000000000000000000000000000000
--- a/app/src/main/java/fr/ul/projetdevmob/ui/theme/Type.kt
+++ /dev/null
@@ -1,34 +0,0 @@
-package fr.ul.projetdevmob.ui.theme
-
-import androidx.compose.material3.Typography
-import androidx.compose.ui.text.TextStyle
-import androidx.compose.ui.text.font.FontFamily
-import androidx.compose.ui.text.font.FontWeight
-import androidx.compose.ui.unit.sp
-
-// Set of Material typography styles to start with
-val Typography = Typography(
-    bodyLarge = TextStyle(
-        fontFamily = FontFamily.Default,
-        fontWeight = FontWeight.Normal,
-        fontSize = 16.sp,
-        lineHeight = 24.sp,
-        letterSpacing = 0.5.sp
-    )
-    /* Other default text styles to override
-    titleLarge = TextStyle(
-        fontFamily = FontFamily.Default,
-        fontWeight = FontWeight.Normal,
-        fontSize = 22.sp,
-        lineHeight = 28.sp,
-        letterSpacing = 0.sp
-    ),
-    labelSmall = TextStyle(
-        fontFamily = FontFamily.Default,
-        fontWeight = FontWeight.Medium,
-        fontSize = 11.sp,
-        lineHeight = 16.sp,
-        letterSpacing = 0.5.sp
-    )
-    */
-)
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_photos.xml b/app/src/main/res/layout/activity_add_photos.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1ea7ef79c3a9e002f5a25f270bba71fb93615567
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_photos.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    android:padding="24dp"
+    android:gravity="center_horizontal">
+
+    <TextView
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="Ajouter les photos (N/S/E/O)"
+        android:textSize="18sp"
+        android:layout_marginBottom="16dp" />
+
+    <Button
+        android:id="@+id/btnPhotoN"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:text="Prendre photo Nord"
+        android:layout_marginBottom="8dp" />
+
+    <Button
+        android:id="@+id/btnPhotoS"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:text="Prendre photo Sud"
+        android:layout_marginBottom="8dp" />
+
+    <Button
+        android:id="@+id/btnPhotoE"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:text="Prendre photo Est"
+        android:layout_marginBottom="8dp" />
+
+    <Button
+        android:id="@+id/btnPhotoO"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:text="Prendre photo Ouest"
+        android:layout_marginBottom="8dp" />
+</LinearLayout>
diff --git a/app/src/main/res/layout/activity_create_model.xml b/app/src/main/res/layout/activity_create_model.xml
new file mode 100644
index 0000000000000000000000000000000000000000..921927c29d347ccd199f205f0a77a55096990d3a
--- /dev/null
+++ b/app/src/main/res/layout/activity_create_model.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    android:padding="24dp">
+
+    <EditText
+        android:id="@+id/editModelName"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:hint="Nom du modèle"
+        android:layout_marginBottom="16dp" />
+
+    <Button
+        android:id="@+id/btnAddPiece"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:text="Ajouter une pièce"
+        android:layout_marginBottom="16dp" />
+
+    <TextView
+        android:id="@+id/txtPiecesList"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:text="Pièces : (aucune)"
+        android:textSize="16sp" />
+
+</LinearLayout>
diff --git a/app/src/main/res/layout/activity_load_model.xml b/app/src/main/res/layout/activity_load_model.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d36f681f4584f9b6364cc5a0dccba818d2f41a22
--- /dev/null
+++ b/app/src/main/res/layout/activity_load_model.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:gravity="center"
+    android:orientation="vertical"
+    android:padding="24dp">
+
+    <TextView
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/chargement_du_mod_le_faire"
+        android:textSize="18sp" />
+</LinearLayout>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index c2d919f0e327744046450e91671f578488754002..ca8a1fbc8d56d8f0d49597ea7513f81b9bdd9d1a 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,3 +1,4 @@
 <resources>
     <string name="app_name">Projetdevmob</string>
+    <string name="chargement_du_mod_le_faire">Chargement du modèle (à faire)</string>
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/xml/file_paths.xml b/app/src/main/res/xml/file_paths.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a6ce6d3aebfdb448a9335ad8698f4a8bef1df73e
--- /dev/null
+++ b/app/src/main/res/xml/file_paths.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<paths xmlns:android="http://schemas.android.com/apk/res/android">
+    <external-path name="external_files" path="." />
+</paths>
diff --git a/doc_de_concep_devmobile.pdf b/doc_de_concep_devmobile.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..767735b5a9e3db45a613c6cd86974c2b595c8a57
Binary files /dev/null and b/doc_de_concep_devmobile.pdf differ
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 6e61ad584c9acd481b2762fa4db2b6d6ceb6a2cf..dffb574932481b060c0677d7c2bea4e365555c41 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -8,6 +8,10 @@ espressoCore = "3.6.1"
 lifecycleRuntimeKtx = "2.6.1"
 activityCompose = "1.10.0"
 composeBom = "2024.04.01"
+appcompat = "1.7.0"
+material = "1.12.0"
+activity = "1.10.1"
+constraintlayout = "2.2.0"
 
 [libraries]
 androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
@@ -24,6 +28,10 @@ androidx-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-toolin
 androidx-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" }
 androidx-ui-test-junit4 = { group = "androidx.compose.ui", name = "ui-test-junit4" }
 androidx-material3 = { group = "androidx.compose.material3", name = "material3" }
+androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
+material = { group = "com.google.android.material", name = "material", version.ref = "material" }
+androidx-activity = { group = "androidx.activity", name = "activity", version.ref = "activity" }
+androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "constraintlayout" }
 
 [plugins]
 android-application = { id = "com.android.application", version.ref = "agp" }
diff --git a/projet_devmobile b/projet_devmobile
deleted file mode 160000
index f17d32799ca47c8e69180c4f3a97e5361d7e7f5a..0000000000000000000000000000000000000000
--- a/projet_devmobile
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit f17d32799ca47c8e69180c4f3a97e5361d7e7f5a