<prompt> Tengeneza API ya Python Flask yenye ncha mbili: moja kukubali data ya JSON iliyo na maelezo kuhusu vitabu kichwa, mwandishi, mwaka wa uchapishaji na kuihifadhi katika hifadhidata ya MariaDB, na mwisho mwingine wa kupata rekodi zote za vitabu zilizopangwa kulingana na mwaka wa uchapishaji.  <response>: Ili kuunda API ya Python Flask iliyo na ncha mbili, utahitaji kufuata hatua hizi:1. Weka vifurushi vinavyohitajika2. Sanidi hifadhidata na jedwali la MariaDB kwa ajili ya kuhifadhi taarifa za kitabu3. Unda programu tumizi ya Flask yenye njia mbili: moja kwa ajili ya kuongeza vitabu na nyingine kwa ajili ya kuvirudisha4. Tekeleza utendakazi kwa kila njiaHapa kuna mfano wa utekelezaji wa API hii:1. Sakinisha vifurushi vinavyohitajika:bashipip install flask flask-mysqldb2. Sanidi hifadhidata na jedwali la MariaDB kwa ajili ya kuhifadhi taarifa za kitabu:Unda hifadhidata mpya inayoitwa books_db na jedwali linaloitwa vitabu lenye muundo ufuatao: sqlTENGENEZA vitabu vya DTABASE_db;TUMIA vitabu_db;CREATE TABLE vitabu id INT AUTO_INCREMENT FUNGUO YA MSINGI, kichwa VARCHAR255 SI UFUPI, mwandishi VARCHAR255 NOT NULL, mwaka_wa_chapisho INT NOT NULL;3. Unda programu tumizi ya Flask na njia mbili: chatukutoka kwa chupa ya kuingiza chupa, ombi, jsonifykutoka kwa flask_mysqldb ingiza MySQLprogramu Chupa__jina__ Sanidi unganisho la MySQLapp.configMYSQL_HOST localhostapp.configMYSQL_USER jina_lako_la mtumiajiapp.configMYSQL_PASSWORD nenosiri_lakoapp.configMYSQL_DB books_dbmysql MySQL mbinuPOSTdef add_book: Ongeza nambari yako hapa mbinuGETdef get_books: Ongeza nambari yako hapa kupitakama __name__ __main__: app.rundebugKweli4. Tekeleza utendakazi kwa kila njia: chatukutoka kwa chupa ya kuingiza chupa, ombi, jsonifykutoka kwa flask_mysqldb ingiza MySQLprogramu Chupa__jina__ Sanidi unganisho la MySQLapp.configMYSQL_HOST localhostapp.configMYSQL_USER jina_lako_la mtumiajiapp.configMYSQL_PASSWORD nenosiri_lakoapp.configMYSQL_DB books_dbmysql MySQL mbinuPOSTdef add_book: data request.get_json title datatitle mwandishi datamwandishi publication_year datapublication_year cur mysql.connection.cursor cur.executeINGIA KATIKA vitabu jina, mwandishi, mwaka_wa_chapisho VALUES s, s, s, kichwa, mwandishi, mwaka_wa_chapisho mysql.connection.commit cur.close return jsonifymessage: Kitabu kimeongezwa kwa mafanikio, mbinuGETdef get_books: cur mysql.connection.cursor cur.executeCHAGUA KUTOKA KWA vitabu ORDER BY publication_year safu cur.fetchall cur.close vitabu kwa safu katika safu: kitabu id: safu 0, kichwa: safu 1, mwandishi: safu 2, publication_year: safu3 vitabu.ongezakitabu rudisha jsonifyvitabukama __name__ __main__: app.rundebugKweliSasa una API Flask yenye ncha mbili: add_book ili kukubali data ya JSON iliyo na maelezo kuhusu vitabu na kuihifadhi katika hifadhidata ya MariaDB, na get_books ili kurejesha rekodi zote za vitabu zilizopangwa kulingana na mwaka wa kuchapishwa. 